From d14573de2a9b8d9d98c1bf68bf755d86c3684266 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sat, 18 Apr 2026 09:55:14 -0700 Subject: [PATCH 01/48] add initial simple runtime profiling support --- .gitignore | 2 + .vscode/launch.json | 16 + .vscode/settings.json | 3 + arg_parse_util.py | 17 + .../profiling-checkpoint.ipynb | 6 + lab/profiling.ipynb | 4415 +++++++++++++++++ placement.py | 11 +- profiler_helper.py | 32 + 8 files changed, 4501 insertions(+), 1 deletion(-) create mode 100644 .vscode/launch.json create mode 100644 .vscode/settings.json create mode 100644 arg_parse_util.py create mode 100644 lab/.ipynb_checkpoints/profiling-checkpoint.ipynb create mode 100644 lab/profiling.ipynb create mode 100644 profiler_helper.py diff --git a/.gitignore b/.gitignore index fdd0c6d..6dbcb7f 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,6 @@ *.gif *.bmp +*.ipynb_checkpoints/* +profile/* **/__pycache__/** \ No newline at end of file diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..dfc4ae8 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,16 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + + { + "name": "Python Debugger: Current File", + "type": "debugpy", + "request": "launch", + "program": "${file}", + "console": "integratedTerminal" + } + ] +} \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..6adbc2b --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "python.defaultInterpreterPath": "/Library/Frameworks/Python.framework/Versions/3.11/bin/python3" +} diff --git a/arg_parse_util.py b/arg_parse_util.py new file mode 100644 index 0000000..2a0fd58 --- /dev/null +++ b/arg_parse_util.py @@ -0,0 +1,17 @@ +import argparse + + +def parse_args(): + """Parse command line arguments for optional profiling.""" + parser = argparse.ArgumentParser() + parser.add_argument( + "--profile", + action="store_true", + help="Enable cProfile and dump results to the profile directory.", + ) + parser.add_argument( + "--profile-tag", + default="", + help="Optional tag to include in the profile output filename.", + ) + return parser.parse_args() diff --git a/lab/.ipynb_checkpoints/profiling-checkpoint.ipynb b/lab/.ipynb_checkpoints/profiling-checkpoint.ipynb new file mode 100644 index 0000000..363fcab --- /dev/null +++ b/lab/.ipynb_checkpoints/profiling-checkpoint.ipynb @@ -0,0 +1,6 @@ +{ + "cells": [], + "metadata": {}, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/lab/profiling.ipynb b/lab/profiling.ipynb new file mode 100644 index 0000000..ce65cc0 --- /dev/null +++ b/lab/profiling.ipynb @@ -0,0 +1,4415 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "16fc7e3c-465e-4189-86d0-54a1f6c5e169", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Latest profile: /Users/vrajpandya/repo/intern_challenge/profile/profile_20260418_091607.prof\n" + ] + } + ], + "source": [ + "from pathlib import Path\n", + "import pstats\n", + "\n", + "profile_dir = (Path.cwd() / \"..\" / \"profile\").resolve()\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "efbaba45", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Latest profile: /Users/vrajpandya/repo/intern_challenge/profile/profile_20260418_091607.prof\n" + ] + } + ], + "source": [ + "# reload latest profile\n", + "profiles = sorted(profile_dir.glob(\"*.prof\"), key=lambda path: path.stat().st_mtime)\n", + "\n", + "if not profiles:\n", + " raise FileNotFoundError(f\"No .prof files found in {profile_dir}\")\n", + "\n", + "latest_profile = profiles[-1]\n", + "print(f\"Latest profile: {latest_profile}\")\n" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "635d44c1", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sat Apr 18 09:16:07 2026 /Users/vrajpandya/repo/intern_challenge/profile/profile_20260418_091607.prof\n", + "\n", + " 2875198 function calls (2837522 primitive calls) in 1.650 seconds\n", + "\n", + " Ordered by: cumulative time\n", + "\n", + " ncalls tottime percall cumtime percall filename:lineno(function)\n", + " 1 0.000 0.000 1.651 1.651 /Users/vrajpandya/repo/intern_challenge/placement.py:716(main)\n", + " 1 0.001 0.001 0.917 0.917 /Users/vrajpandya/repo/intern_challenge/placement.py:638(plot_placement)\n", + " 1 0.028 0.028 0.688 0.688 /Users/vrajpandya/repo/intern_challenge/placement.py:369(train_placement)\n", + " 375/8 0.001 0.000 0.631 0.079 :1167(_find_and_load)\n", + " 371/8 0.001 0.000 0.631 0.079 :1122(_find_and_load_unlocked)\n", + " 362/9 0.001 0.000 0.630 0.070 :666(_load_unlocked)\n", + " 350/9 0.000 0.000 0.630 0.070 :934(exec_module)\n", + " 944/13 0.000 0.000 0.629 0.048 :233(_call_with_frames_removed)\n", + " 806/9 0.020 0.000 0.626 0.070 {built-in method builtins.exec}\n", + " 189/16 0.000 0.000 0.477 0.030 {built-in method builtins.__import__}\n", + " 452/47 0.001 0.000 0.461 0.010 :1209(_handle_fromlist)\n", + " 1001 0.001 0.000 0.331 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_compile.py:20(inner)\n", + " 1 0.000 0.000 0.330 0.330 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1129(savefig)\n", + " 1 0.000 0.000 0.330 0.330 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3234(savefig)\n", + " 1 0.000 0.000 0.330 0.330 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2052(print_figure)\n", + " 1 0.000 0.000 0.294 0.294 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:15(__init__)\n", + " 1 0.000 0.000 0.294 0.294 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:239(__init__)\n", + " 1 0.000 0.000 0.293 0.293 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/__init__.py:1()\n", + " 1 0.000 0.000 0.239 0.239 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1()\n", + " 2 0.000 0.000 0.230 0.115 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2043()\n", + " 2 0.000 0.000 0.230 0.115 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:450(print_png)\n", + " 2 0.000 0.000 0.230 0.115 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:440(_print_pil)\n", + "1305/1164 0.009 0.000 0.199 0.000 {built-in method builtins.__build_class__}\n", + " 1 0.000 0.000 0.166 0.166 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1531(imsave)\n", + " 1 0.000 0.000 0.165 0.165 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2346(save)\n", + " 1 0.000 0.000 0.160 0.160 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1242(_save)\n", + " 1 0.000 0.000 0.160 0.160 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:499(_save)\n", + " 1 0.000 0.000 0.160 0.160 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:527(_encode_tile)\n", + " 2 0.160 0.080 0.160 0.080 {method 'encode' of 'ImagingEncoder' objects}\n", + " 105 0.000 0.000 0.145 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:159(_update_set_signature_and_docstring)\n", + " 104 0.000 0.000 0.143 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:126(__init_subclass__)\n", + " 1000 0.001 0.000 0.141 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:433(backward)\n", + " 1 0.000 0.000 0.140 0.140 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1459(subplots)\n", + " 1000 0.002 0.000 0.140 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/__init__.py:149(backward)\n", + " 1000 0.135 0.000 0.135 0.000 {method 'run_backward' of 'torch._C._EngineBase' objects}\n", + " 1 0.000 0.000 0.134 0.134 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:1()\n", + " 1 0.000 0.000 0.134 0.134 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:101(inner)\n", + " 2 0.000 0.000 0.134 0.067 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:82(remove)\n", + " 4/3 0.000 0.000 0.134 0.045 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:63(__call__)\n", + " 1 0.000 0.000 0.134 0.134 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:149(_allowed_function_ids)\n", + " 585/2 0.023 0.000 0.131 0.065 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:188(_find_torch_objects)\n", + " 7/3 0.000 0.000 0.130 0.043 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:443(wrapper)\n", + " 6 0.000 0.000 0.122 0.020 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4338(get_tightbbox)\n", + " 1 0.000 0.000 0.120 0.120 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1()\n", + " 1 0.000 0.000 0.114 0.114 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:1()\n", + " 117 0.000 0.000 0.113 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1837(kwdoc)\n", + " 350 0.001 0.000 0.110 0.000 :1007(get_code)\n", + " 2 0.000 0.000 0.102 0.051 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:93(draw_wrapper)\n", + " 592/2 0.001 0.000 0.102 0.051 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:54(draw_wrapper)\n", + " 2 0.000 0.000 0.102 0.051 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3134(draw)\n", + " 6/2 0.000 0.000 0.100 0.050 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:114(_draw_list_compositing_images)\n", + " 4 0.000 0.000 0.100 0.025 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3005(draw)\n", + " 1001 0.059 0.000 0.100 0.000 /Users/vrajpandya/repo/intern_challenge/placement.py:252(wirelength_attraction_loss)\n", + " 117 0.002 0.000 0.097 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1598(pprint_setters)\n", + " 14/10 0.000 0.000 0.096 0.010 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1404(_get_tightbbox_for_layout_only)\n", + " 22 0.000 0.000 0.095 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1320(get_tightbbox)\n", + " 1 0.000 0.000 0.095 0.095 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colorbar.py:1()\n", + " 1 0.000 0.000 0.094 0.094 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:777(figure)\n", + " 1 0.000 0.000 0.094 0.094 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:462(new_figure_manager)\n", + " 1 0.000 0.000 0.092 0.092 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:1()\n", + " 1 0.000 0.000 0.086 0.086 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3404(new_figure_manager)\n", + " 1 0.000 0.000 0.086 0.086 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3413(new_figure_manager_given_figure)\n", + " 1 0.000 0.000 0.086 0.086 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1774(new_manager)\n", + " 1 0.042 0.042 0.086 0.086 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2682(create_with_canvas)\n", + " 1 0.000 0.000 0.085 0.085 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1()\n", + " 122 0.002 0.000 0.083 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1270(_update_ticks)\n", + " 4252 0.006 0.000 0.080 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1470(get_valid_values)\n", + " 1 0.000 0.000 0.074 0.074 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:2591(tight_layout)\n", + " 1 0.000 0.000 0.074 0.074 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3508(tight_layout)\n", + " 1 0.000 0.000 0.074 0.074 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:163(execute)\n", + " 1 0.000 0.000 0.072 0.072 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:194(get_tight_layout_figure)\n", + " 1 0.000 0.000 0.072 0.072 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:20(_auto_adjust_subplotpars)\n", + " 15841 0.011 0.000 0.071 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:157(_is_allowed_module_prefix)\n", + " 9 0.000 0.000 0.068 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/__init__.py:108(import_module)\n", + " 9 0.000 0.000 0.068 0.008 :1194(_gcd_import)\n", + " 1 0.000 0.000 0.067 0.067 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/__init__.py:1()\n", + " 1 0.000 0.000 0.066 0.066 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/convert_frame.py:1()\n", + " 2 0.000 0.000 0.064 0.032 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:381(draw)\n", + " 1 0.000 0.000 0.060 0.060 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:1()\n", + " 350 0.000 0.000 0.060 0.000 :1127(get_data)\n", + " 1 0.000 0.000 0.059 0.059 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config.py:1()\n", + " 7277 0.040 0.000 0.059 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:867(cleandoc)\n", + " 1 0.000 0.000 0.059 0.059 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1736(get_tightbbox)\n", + " 2 0.000 0.000 0.057 0.028 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/__init__.py:1820(__getattr__)\n", + " 1 0.000 0.000 0.057 0.057 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/__init__.py:1()\n", + " 7315 0.003 0.000 0.055 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:848(getdoc)\n", + " 1 0.000 0.000 0.054 0.054 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:1()\n", + " 350 0.049 0.000 0.049 0.000 {method 'read' of '_io.BufferedReader' objects}\n", + " 462 0.002 0.000 0.049 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:915(get_window_extent)\n", + " 1 0.000 0.000 0.049 0.049 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1()\n", + " 23961 0.011 0.000 0.046 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:973(getmodule)\n", + " 7505 0.003 0.000 0.046 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:272(_compile)\n", + " 1 0.000 0.000 0.046 0.046 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:799(subplots)\n", + " 1 0.000 0.000 0.046 0.046 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:264(subplots)\n", + " 2 0.000 0.000 0.046 0.023 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:658(add_subplot)\n", + " 2 0.000 0.000 0.046 0.023 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:569(__init__)\n", + " 350 0.000 0.000 0.045 0.000 :727(_compile_bytecode)\n", + " 1000 0.003 0.000 0.045 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:356(wrapper)\n", + " 350 0.045 0.000 0.045 0.000 {built-in method marshal.loads}\n", + " 8 0.000 0.000 0.044 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1379(draw)\n", + " 1 0.000 0.000 0.043 0.043 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1()\n", + " 189 0.000 0.000 0.042 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:738(compile)\n", + " 10 0.000 0.000 0.041 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2943(_update_title_position)\n", + " 440 0.005 0.000 0.040 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:358(_get_layout)\n", + " 1 0.022 0.022 0.040 0.040 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:152(__init__)\n", + " 60 0.000 0.000 0.039 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1311(_get_ticklabel_bboxes)\n", + " 1 0.000 0.000 0.039 0.039 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:1()\n", + " 60 0.000 0.000 0.039 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1315()\n", + " 1 0.000 0.000 0.039 0.039 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1()\n", + " 1 0.000 0.000 0.038 0.038 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/__init__.py:1()\n", + " 1 0.000 0.000 0.038 0.038 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_axes.py:1()\n", + " 1000 0.008 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/nn/utils/clip_grad.py:12(clip_grad_norm_)\n", + " 123 0.000 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1209(wrap)\n", + " 8766 0.003 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:936(getsourcefile)\n", + " 223 0.000 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1422(__init__)\n", + " 123 0.003 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:884(_process_class)\n", + " 234 0.000 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:579(draw)\n", + " 223 0.006 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1442(get_aliases)\n", + " 1 0.000 0.000 0.037 0.037 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:1()\n", + " 1 0.000 0.000 0.036 0.036 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/__init__.py:1()\n", + " 62 0.001 0.000 0.036 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:142(get_window_extent)\n", + " 20 0.000 0.000 0.036 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2599(_update_label_position)\n", + " 30 0.000 0.000 0.036 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2143(_get_tick_boxes_siblings)\n", + " 1 0.000 0.000 0.036 0.036 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1()\n", + " 16993 0.009 0.000 0.035 0.000 {built-in method builtins.any}\n", + " 1000 0.002 0.000 0.034 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:58(_use_grad)\n", + " 1 0.000 0.000 0.034 0.034 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:1()\n", + " 1 0.000 0.000 0.034 0.034 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:1()\n", + " 106 0.000 0.000 0.033 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2376(add_patch)\n", + " 117 0.000 0.000 0.032 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:48(__init__)\n", + " 1 0.000 0.000 0.032 0.032 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/formatter.py:1()\n", + " 362 0.000 0.000 0.032 0.000 :566(module_from_spec)\n", + "12203/9731 0.005 0.000 0.031 0.000 {built-in method numpy.core._multiarray_umath.implement_array_function}\n", + " 1 0.000 0.000 0.031 0.031 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/__init__.py:1()\n", + " 1001 0.031 0.000 0.031 0.000 {built-in method torch.logsumexp}\n", + " 1000 0.002 0.000 0.031 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:130(step)\n", + " 1882 0.001 0.000 0.031 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:268(to_rgba)\n", + " 1 0.014 0.014 0.031 0.031 /Users/vrajpandya/repo/intern_challenge/placement.py:91(generate_placement_input)\n", + " 1 0.000 0.000 0.030 0.030 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:1()\n", + " 1 0.000 0.000 0.030 0.030 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1()\n", + " 93 0.000 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:350(get_tightbbox)\n", + " 189 0.000 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:970(parse)\n", + " 40 0.000 0.000 0.029 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:225(compile)\n", + " 123 0.000 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1192(dataclass)\n", + " 8780 0.003 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/package/package_importer.py:692(_patched_getfile)\n", + " 383/189 0.001 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:447(_parse_sub)\n", + " 553/192 0.011 0.000 0.028 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:507(_parse)\n", + " 2 0.000 0.000 0.028 0.014 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1198(_gen_axes_spines)\n", + " 2 0.000 0.000 0.028 0.014 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1213()\n", + " 8 0.000 0.000 0.028 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:432(linear_spine)\n", + " 8 0.000 0.000 0.028 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:35(__init__)\n", + " 233 0.000 0.000 0.028 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:340(_set_facecolor)\n", + " 127 0.000 0.000 0.028 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:347(set_facecolor)\n", + " 7764 0.001 0.000 0.028 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:961(getabsfile)\n", + " 28 0.028 0.001 0.028 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:364(by_key)\n", + " 1 0.000 0.000 0.027 0.027 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/__init__.py:1()\n", + " 1 0.000 0.000 0.027 0.027 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1()\n", + " 10 0.000 0.000 0.027 0.003 :1231(create_module)\n", + " 10 0.027 0.003 0.027 0.003 {built-in method _imp.create_dynamic}\n", + " 106 0.001 0.000 0.027 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2389(_update_patch_limits)\n", + " 1 0.000 0.000 0.026 0.026 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axes3d.py:1()\n", + " 1 0.000 0.000 0.026 0.026 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1()\n", + " 244 0.000 0.000 0.026 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2138(__call__)\n", + " 1000 0.002 0.000 0.025 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:254(adam)\n", + " 1 0.000 0.000 0.025 0.025 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:1()\n", + " 19 0.000 0.000 0.025 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:190(add)\n", + " 5 0.000 0.000 0.024 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:185(_recompile_re)\n", + " 8780 0.011 0.000 0.024 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:896(getfile)\n", + " 223 0.008 0.000 0.024 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1517(get_setters)\n", + " 122 0.000 0.000 0.024 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1606(get_major_ticks)\n", + " 244 0.000 0.000 0.024 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2142(tick_values)\n", + " 234 0.001 0.000 0.023 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:530(_draw_paths_with_artist_properties)\n", + " 121853 0.015 0.000 0.023 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:183()\n", + " 5768 0.002 0.000 0.022 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:173(search)\n", + " 37 0.000 0.000 0.022 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1555(_get_tick)\n", + " 900 0.001 0.000 0.022 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:65(_get_text_metrics_with_cache)\n", + " 10 0.000 0.000 0.022 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2358(_update_label_position)\n", + " 244 0.003 0.000 0.022 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2077(_raw_ticks)\n", + " 9 0.000 0.000 0.022 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:729(__init_subclass__)\n", + " 388 0.002 0.000 0.021 0.000 :1056(_find_spec)\n", + " 455 0.001 0.000 0.021 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:413(_create_fn)\n", + " 1001 0.001 0.000 0.021 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:33(disable)\n", + " 597 0.001 0.000 0.020 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:259(get_transform)\n", + " 1000 0.008 0.000 0.020 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:330(_single_tensor_adam)\n", + " 142 0.000 0.000 0.020 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:95(draw_path)\n", + " 50 0.000 0.000 0.020 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:287(draw)\n", + " 142 0.017 0.000 0.019 0.000 {method 'draw_path' of 'matplotlib.backends._backend_agg.RendererAgg' objects}\n", + " 1 0.000 0.000 0.019 0.019 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_fontconfig_pattern.py:1()\n", + "281051/281043 0.016 0.000 0.019 0.000 {built-in method builtins.isinstance}\n", + " 1 0.000 0.000 0.019 0.019 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/__init__.py:1()\n", + " 122 0.001 0.000 0.019 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1497(get_minorticklocs)\n", + "6348/5165 0.002 0.000 0.018 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:289(wrapper)\n", + " 519 0.002 0.000 0.018 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:746(get_patch_transform)\n", + " 388 0.000 0.000 0.018 0.000 :1496(find_spec)\n", + " 388 0.001 0.000 0.018 0.000 :1464(_get_spec)\n", + " 1001 0.003 0.000 0.018 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:267(__call__)\n", + " 742 0.000 0.000 0.017 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3277(signature)\n", + " 742 0.000 0.000 0.017 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3023(from_callable)\n", + " 865/742 0.002 0.000 0.017 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2426(_signature_from_callable)\n", + " 4 0.015 0.004 0.017 0.004 /Users/vrajpandya/repo/intern_challenge/placement.py:470(calculate_overlap_metrics)\n", + " 37 0.001 0.000 0.016 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:65(__init__)\n", + " 136 0.000 0.000 0.016 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:38(__call__)\n", + " 499 0.002 0.000 0.016 0.000 :1604(find_spec)\n", + " 30 0.005 0.000 0.016 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:847(_rc_params_in_file)\n", + " 126/115 0.000 0.000 0.016 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:79(__call__)\n", + " 106981 0.010 0.000 0.015 0.000 {built-in method builtins.getattr}\n", + " 1001 0.002 0.000 0.015 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:307(_fn)\n", + " 2 0.000 0.000 0.015 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1381(clear)\n", + " 2 0.000 0.000 0.015 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1254(__clear)\n", + " 219049 0.015 0.000 0.015 0.000 {method 'startswith' of 'str' objects}\n", + " 1148 0.001 0.000 0.014 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1472(transform)\n", + " 1 0.000 0.000 0.013 0.013 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/__init__.py:1()\n", + " 1 0.000 0.000 0.013 0.013 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:1()\n", + " 122 0.000 0.000 0.013 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1493(get_majorticklocs)\n", + " 1 0.000 0.000 0.013 0.013 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:1()\n", + "2598/1427 0.004 0.000 0.013 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2431(get_affine)\n", + " 12 0.000 0.000 0.013 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:51(__missing__)\n", + " 223 0.008 0.000 0.013 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1453()\n", + " 1 0.000 0.000 0.012 0.012 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:1()\n", + " 133 0.000 0.000 0.012 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:651(union)\n", + " 189 0.000 0.000 0.012 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:571(_code)\n", + " 1 0.000 0.000 0.012 0.012 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2645(__init__)\n", + " 1 0.011 0.011 0.011 0.011 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:120(__init__)\n", + " 128 0.001 0.000 0.011 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:734(draw)\n", + " 19 0.000 0.000 0.011 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:412(__init__)\n", + " 2 0.000 0.000 0.011 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:206(read_style_directory)\n", + " 123 0.000 0.000 0.011 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:600(get_window_extent)\n", + " 456 0.011 0.000 0.011 0.000 {built-in method builtins.dir}\n", + " 1 0.000 0.000 0.011 0.011 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_axes.py:46(Axes)\n", + " 18 0.000 0.000 0.011 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:469(__init__)\n", + " 39 0.000 0.000 0.011 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:73(_get_text_metrics_with_cache_impl)\n", + " 39 0.000 0.000 0.011 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:208(get_text_width_height_descent)\n", + " 9940 0.010 0.000 0.010 0.000 {method 'search' of 're.Pattern' objects}\n", + " 244 0.000 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:213(format_ticks)\n", + " 1 0.000 0.000 0.010 0.010 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:1()\n", + " 123 0.001 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:528(_init_fn)\n", + " 804 0.002 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1176(_update_props)\n", + " 1059/189 0.005 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:37(_compile)\n", + " 1148 0.001 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2406(transform_affine)\n", + " 1000 0.003 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:776(zero_grad)\n", + " 150 0.001 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:738(draw)\n", + " 350 0.009 0.000 0.009 0.000 {built-in method io.open_code}\n", + " 695 0.003 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2331(_signature_from_function)\n", + " 1 0.000 0.000 0.009 0.009 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1()\n", + " 6334 0.005 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2683(__init__)\n", + " 260 0.000 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:225(__init__)\n", + " 4698 0.003 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:69(_wrapreduction)\n", + " 72 0.000 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1233(findfont)\n", + " 714 0.000 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1212(_internal_update)\n", + " 25 0.000 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1576(_copy_tick_props)\n", + " 260 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:306(_set_marker)\n", + " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/__init__.py:1()\n", + " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1()\n", + " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1()\n", + " 5085 0.004 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:66(copy)\n", + " 152 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2757(get_tick_space)\n", + " 9669 0.008 0.000 0.008 0.000 {method 'reduce' of 'numpy.ufunc' objects}\n", + " 350 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1418(__sub__)\n", + " 75 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1336(update_from)\n", + " 519 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:880(get_bbox)\n", + " 68 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:250(_prepare_font)\n", + " 2 0.002 0.001 0.008 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1393(_findfont_cached)\n", + " 492 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:147()\n", + " 2722 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1340(__add__)\n", + " 123 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:607(get_extents)\n", + " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:1()\n", + " 8 0.000 0.000 0.008 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4306(get_default_bbox_extra_artists)\n", + " 1000 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_contextlib.py:112(decorate_context)\n", + " 976 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:711(__setitem__)\n", + " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:439(_warn_if_gui_out_of_main_thread)\n", + " 3 0.000 0.000 0.008 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:270(_get_backend_mod)\n", + " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:1()\n", + " 2/1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:284(switch_backend)\n", + " 492 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1223(set)\n", + " 8 0.000 0.000 0.008 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4335()\n", + " 111 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:287(__init__)\n", + " 122 0.000 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:699(set_locs)\n", + " 12751 0.004 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:741(__getitem__)\n", + "5559/5339 0.001 0.000 0.007 0.000 {built-in method builtins.next}\n", + " 1 0.000 0.000 0.007 0.007 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1()\n", + " 1 0.000 0.000 0.007 0.007 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_code_flow.py:1()\n", + " 464 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:860(_fully_clipped_to_axes)\n", + " 1294 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1106(get_points)\n", + " 2000 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/profiler.py:630(__enter__)\n", + " 36 0.000 0.000 0.007 0.000 :1655(_fill_cache)\n", + " 4675/75 0.003 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:128(deepcopy)\n", + " 12/8 0.000 0.000 0.007 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:575(__get__)\n", + "4816/4734 0.004 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:773(is_safe_constant)\n", + " 300/75 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:227(_deepcopy_dict)\n", + " 437 0.000 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1536(number_of_parameters)\n", + " 94 0.000 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1391(_preprocess_data)\n", + " 2722 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2498(composite_transform_factory)\n", + " 36 0.007 0.000 0.007 0.000 {built-in method posix.listdir}\n", + " 20 0.000 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:944(set_tick_params)\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1()\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:240(_check_versions)\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:1()\n", + " 2436 0.006 0.000 0.006 0.000 {built-in method posix.stat}\n", + " 1047 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:813(from_extents)\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow.py:1()\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_caffe2.py:1()\n", + " 954 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1542(is_alias)\n", + " 1913 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:51(_wrapfunc)\n", + "16691/13889 0.003 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:317(stale)\n", + " 32774 0.005 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:283(ismodule)\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:1()\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:1()\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:1()\n", + " 2257 0.004 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:35(update_wrapper)\n", + "155602/154398 0.006 0.000 0.006 0.000 {built-in method builtins.len}\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/__init__.py:1()\n", + " 134 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:772(set_clip_path)\n", + " 2834 0.004 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:638(__hash__)\n", + " 626 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:508(update_position)\n", + "2760/2701 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:338(inner)\n", + " 105 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:170()\n", + " 6 0.000 0.000 0.006 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3157(grid)\n", + " 1908 0.002 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:259(_reconstruct)\n", + " 12 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1658(grid)\n", + " 1938 0.001 0.000 0.006 0.000 <__array_function__ internals>:177(amin)\n", + " 2000 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:687(__call__)\n", + " 1962 0.001 0.000 0.006 0.000 <__array_function__ internals>:177(amax)\n", + " 1 0.006 0.006 0.006 0.006 {built-in method set_icon}\n", + " 28626 0.004 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:162(__getitem__)\n", + " 123 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:624(_cmp_fn)\n", + " 106 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1400(contains_branch_seperately)\n", + " 88 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:104(__init__)\n", + "2488/2433 0.001 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:132(__enter__)\n", + " 106 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1381(contains_branch)\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow_location.py:1()\n", + " 2000 0.005 0.000 0.005 0.000 {built-in method torch._ops.profiler._record_function_enter_new}\n", + " 3798 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1889(__init__)\n", + " 68 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1303(_find_fonts_by_props)\n", + " 123 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:588(_repr_fn)\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_conversion.py:1()\n", + "17646/17633 0.004 0.000 0.005 0.000 {method 'join' of 'str' objects}\n", + " 15237 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:252(get)\n", + " 732 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2265(getter)\n", + " 2513 0.003 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:758(__init__)\n", + " 1118 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:899(copy)\n", + " 4 0.000 0.000 0.005 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:882(clear)\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:1()\n", + " 54891 0.005 0.000 0.005 0.000 {built-in method builtins.min}\n", + "5790/5337 0.002 0.000 0.005 0.000 {built-in method __new__ of type object at 0x1057ebd60}\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1()\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builtin.py:1()\n", + " 2000 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/profiler.py:636(__exit__)\n", + " 109 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:694(__init__)\n", + " 92 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2514(get_tick_space)\n", + " 848 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:374(extents)\n", + " 628 0.001 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:738(_convert_units)\n", + " 36 0.001 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:488(__new__)\n", + "1576/1574 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1777(__eq__)\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:1()\n", + " 2220 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2348(__init__)\n", + " 68 0.005 0.000 0.005 0.000 {method 'set_text' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 4252 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1555(aliased_name)\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/textpath.py:1()\n", + " 842 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:847(viewLim)\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_properties.py:1()\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/quiver.py:1()\n", + " 931 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:649(__eq__)\n", + " 1938 0.001 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2829(amin)\n", + " 4 0.000 0.000 0.005 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:794(_set_scale)\n", + " 4 0.000 0.000 0.004 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:103(set_default_locators_and_formatters)\n", + " 1908/848 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2391(_iter_break_from_left_to_right)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:489(InstructionTranslatorBase)\n", + " 1026 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2969(__init__)\n", + " 1303 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:38(_wrapit)\n", + "5281/3214 0.001 0.000 0.004 0.000 {built-in method builtins.hash}\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/__init__.py:1()\n", + " 43052 0.004 0.000 0.004 0.000 {built-in method builtins.hasattr}\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/__init__.py:1()\n", + " 1962 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2703(amax)\n", + " 846 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:833(_unstale_viewLim)\n", + " 2000 0.002 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:46(_has_foreach_support)\n", + " 33 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:162(stack_op)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:1()\n", + " 636 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:413(iter_bezier)\n", + " 137 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:666(recache)\n", + " 1 0.004 0.004 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:39(__init__)\n", + " 636 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:723(_get_field)\n", + " 362 0.001 0.000 0.004 0.000 :493(_init_module_attrs)\n", + " 4 0.000 0.000 0.004 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:425(__init__)\n", + " 4 0.000 0.000 0.004 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:537(set_useMathText)\n", + " 8861 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:691(__call__)\n", + " 1000 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:34(wrapped)\n", + " 1 0.000 0.000 0.004 0.004 /Users/vrajpandya/repo/intern_challenge/placement.py:586(calculate_normalized_metrics)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/ElementTree.py:1()\n", + " 2001 0.004 0.000 0.004 0.000 {built-in method torch.stack}\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:1()\n", + " 76922 0.004 0.000 0.004 0.000 {method 'lstrip' of 'str' objects}\n", + " 410 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:447(update_position)\n", + " 1 0.004 0.004 0.004 0.004 /Users/vrajpandya/repo/intern_challenge/placement.py:541(calculate_cells_with_overlaps)\n", + " 2123 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1782(transform)\n", + " 1490/642 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2384(__eq__)\n", + " 7104 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1769(__init__)\n", + " 1000 0.004 0.000 0.004 0.000 {built-in method torch._foreach_norm}\n", + " 48 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1347(_add_data_doc)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:1()\n", + " 341 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:595(__init__)\n", + "2488/2433 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:141(__exit__)\n", + " 109 0.004 0.000 0.004 0.000 {built-in method torch.rand}\n", + " 1404 0.000 0.000 0.004 0.000 :140(_path_stat)\n", + " 84433 0.004 0.000 0.004 0.000 {method 'append' of 'list' objects}\n", + " 256 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:463(transformed)\n", + " 1047 0.000 0.000 0.004 0.000 <__array_function__ internals>:177(reshape)\n", + " 1478 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:103(_stale_axes_callback)\n", + " 13069 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:690(_get)\n", + " 122 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:781(_set_format)\n", + " 122 0.000 0.000 0.004 0.000 <__array_function__ internals>:177(isclose)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:321(preinit)\n", + " 1231/365 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:172(getwidth)\n", + " 846 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:836()\n", + " 522 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:804(from_bounds)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1()\n", + " 18314 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:292(isclass)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1()\n", + " 244 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1564(_get_tick_label_size)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/common.py:1()\n", + " 122 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:2278(isclose)\n", + " 4 0.000 0.000 0.004 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1108(set_clip_path)\n", + " 1000 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:911(__rdiv__)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/__init__.py:1()\n", + " 3 0.000 0.000 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:393(get_renderer)\n", + " 3 0.003 0.001 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:64(__init__)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/common.py:8(pyparsing_common)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1()\n", + " 4 0.000 0.000 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:87()\n", + " 4 0.000 0.000 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:75(_cmp_wrapper)\n", + " 18 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:799(validate_cycler)\n", + " 55889 0.003 0.000 0.003 0.000 {method 'get' of 'dict' objects}\n", + " 96 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:157(_reset_visual_defaults)\n", + " 700 0.001 0.000 0.003 0.000 :437(cache_from_source)\n", + " 2100 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1291(set_ydata)\n", + " 8 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:31(__call__)\n", + " 16 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:22(get_cls)\n", + " 1006 0.000 0.000 0.003 0.000 :16(exists)\n", + " 959 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1998(rotate_deg)\n", + " 29 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:187(draw_text)\n", + " 244 0.000 0.000 0.003 0.000 <__array_function__ internals>:177(clip)\n", + " 3091 0.003 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:182(set_children)\n", + " 2548 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2011(_setattr_cm)\n", + " 5120 0.001 0.000 0.003 0.000 :117(__instancecheck__)\n", + " 2002 0.003 0.000 0.003 0.000 {built-in method torch.abs}\n", + "4452/4450 0.001 0.000 0.003 0.000 {built-in method builtins.all}\n", + " 2/1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_jit_internal.py:478(fn)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/functional.py:970(_return_output)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/functional.py:740(_unique_impl)\n", + " 1 0.003 0.003 0.003 0.003 {built-in method unique_dim}\n", + " 10655 0.003 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:400(istype)\n", + " 1470 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:664(_is_type)\n", + " 9282 0.003 0.000 0.003 0.000 {method 'split' of 'str' objects}\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1()\n", + " 16172 0.003 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:231(__next)\n", + " 2846 0.001 0.000 0.003 0.000 :126(_path_join)\n", + " 453 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:237(__set_name__)\n", + " 1003 0.003 0.000 0.003 0.000 {built-in method torch.tensor}\n", + " 244 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2111(clip)\n", + " 3314 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:158(invalidate)\n", + " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:220(extract_stack)\n", + " 1000 0.001 0.000 0.003 0.000 /Users/vrajpandya/repo/intern_challenge/placement.py:308(overlap_repulsion_loss)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:1()\n", + " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:375(extract)\n", + " 2246 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1849(transform_affine)\n", + " 123 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1593(transform_path)\n", + " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:397(_extract_from_extended_frame_gen)\n", + " 3 0.000 0.000 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2211(__init_subclass__)\n", + " 1906 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:416(pchanged)\n", + " 530 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:208(__call__)\n", + " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2253(pprint_styles)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:92(_disallowed_function_ids)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1728(get_default_bbox_extra_artists)\n", + " 1604 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1758(convert_units)\n", + " 1047 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:198(reshape)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/table.py:1()\n", + " 760 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:302(xmin)\n", + " 244 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:216()\n", + " 83 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:316(line)\n", + " 1000 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:109(_default_to_fused_or_foreach)\n", + " 810 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:317(ymax)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_result.py:1()\n", + " 394 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:99(__init__)\n", + " 21 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:26(getline)\n", + " 176 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:94(closegroup)\n", + " 21 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:36(getlines)\n", + " 1000 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/__init__.py:56(_make_grads)\n", + " 1000 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:34(_group_tensors_by_device_and_dtype)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:1()\n", + " 11 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:80(updatecache)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool.py:1()\n", + " 2598 0.001 0.000 0.003 0.000 <__array_function__ internals>:177(dot)\n", + " 165/106 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:461(__getitem__)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:32(_gen_cmap_registry)\n", + " 33 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2315(_signature_from_builtin)\n", + " 1885 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:269(convert_xunits)\n", + " 13322 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:170(append)\n", + " 2489 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:287(helper)\n", + " 790 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:307(ymin)\n", + " 959 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1975(rotate)\n", + " 33 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2172(_signature_fromstr)\n", + " 760 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:312(xmax)\n", + " 12 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1076(parse_string)\n", + " 18136 0.002 0.000 0.003 0.000 {built-in method builtins.max}\n", + " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2257()\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend.py:1()\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact.py:1()\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1()\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1()\n", + " 131 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:239(__array__)\n", + " 1000 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:80(_init_group)\n", + " 424 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1710(__eq__)\n", + " 133 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:656()\n", + " 4000 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/grad_mode.py:182(__init__)\n", + " 123 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1602(transform_path_affine)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_secondary_axes.py:1()\n", + " 61 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(isin)\n", + " 15841 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:176()\n", + " 44125 0.002 0.000 0.002 0.000 {built-in method builtins.id}\n", + " 1604 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:56(_is_natively_supported)\n", + " 243 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1333(__init__)\n", + " 9181 0.002 0.000 0.002 0.000 {method 'copy' of 'numpy.ndarray' objects}\n", + " 61 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:766(isin)\n", + " 424 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2162(__eq__)\n", + " 1921 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:285(process)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:1()\n", + " 710 0.000 0.000 0.002 0.000 :392(cached)\n", + " 999 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:572(__call__)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:1()\n", + " 530 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:199(__init__)\n", + " 1883 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:281(convert_yunits)\n", + " 61 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(in1d)\n", + " 1452 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1270(set_xdata)\n", + " 5120 0.001 0.000 0.002 0.000 {built-in method _abc._abc_instancecheck}\n", + " 133 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:657()\n", + " 582 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1743(normalize_kwargs)\n", + " 1324 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:68(_stale_figure_callback)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_run.py:1()\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:1()\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool_component.py:1()\n", + " 2000 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:447(__call__)\n", + " 244 0.000 0.000 0.002 0.000 {method 'clip' of 'numpy.ndarray' objects}\n", + " 388 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:690(new_gc)\n", + " 12104 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:113(__init__)\n", + " 61 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:524(in1d)\n", + " 15818 0.002 0.000 0.002 0.000 {built-in method builtins.setattr}\n", + " 105 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:638(Union)\n", + " 133 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:658()\n", + " 45 0.001 0.000 0.002 0.000 {built-in method builtins.eval}\n", + " 582 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:356(__setitem__)\n", + " 133 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:659()\n", + " 68 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1525(get_font)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:1()\n", + " 1001 0.002 0.000 0.002 0.000 {built-in method torch.sum}\n", + " 244 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:127(_clip)\n", + " 1745 0.002 0.000 0.002 0.000 {built-in method torch.randint}\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mathtext.py:1()\n", + " 360 0.000 0.000 0.002 0.000 :567(_get_cached)\n", + " 388 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:766(__init__)\n", + " 122 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:2359(within_tol)\n", + " 13 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:401(validate_font_properties)\n", + " 10 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_fontconfig_pattern.py:80(parse_fontconfig_pattern)\n", + " 1581 0.000 0.000 0.002 0.000 {method 'all' of 'numpy.ndarray' objects}\n", + " 668 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(all)\n", + " 631 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:221(is_color_like)\n", + " 7289 0.002 0.000 0.002 0.000 {method 'expandtabs' of 'str' objects}\n", + " 5903 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/function_base.py:346(iterable)\n", + " 90 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:194(update)\n", + " 28 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:599(_frozen_get_del_attr)\n", + " 10878 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:378(isfunction)\n", + " 790 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1115(score_family)\n", + " 549 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:168(_type_check)\n", + " 409 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:307(validate_color)\n", + " 2000 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/profiler.py:619(__init__)\n", + " 110 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1229(_cm_set)\n", + " 1167 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2043(scale)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/parsers/expat.py:1()\n", + " 7583 0.002 0.000 0.002 0.000 {built-in method numpy.asarray}\n", + " 1 0.002 0.002 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1493(_get_font)\n", + " 571 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:296(wrapper)\n", + " 1634 0.000 0.000 0.002 0.000 {method 'max' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_invocation.py:1()\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:1()\n", + " 306/12 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:776(_parseNoCache)\n", + "4747/3314 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:167(_invalidate_internal)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/kiwisolver/__init__.py:1()\n", + " 4284 0.002 0.000 0.002 0.000 {built-in method numpy.array}\n", + " 72/12 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3861(parseImpl)\n", + " 6510 0.002 0.000 0.002 0.000 {method 'item' of 'torch._C._TensorBase' objects}\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/__init__.py:1()\n", + "2195/2193 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2592(get_matrix)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:1()\n", + " 1000 0.002 0.000 0.002 0.000 {method 'mul_' of 'torch._C._TensorBase' objects}\n", + " 122 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:708(_compute_offset)\n", + " 189 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:509(_compile_info)\n", + " 3003 0.002 0.000 0.002 0.000 {method 'long' of 'torch._C._TensorBase' objects}\n", + " 53 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:662(intersection)\n", + " 111 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:88(f)\n", + " 1000 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_contextlib.py:141(clone)\n", + " 2489 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:104(__init__)\n", + " 9 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5392(__init__)\n", + " 1768 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:909(get_siblings)\n", + " 2000 0.002 0.000 0.002 0.000 {built-in method torch._ops.profiler.}\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_location.py:1()\n", + " 371 0.000 0.000 0.002 0.000 :169(__enter__)\n", + " 360 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:180(__init__)\n", + " 29/8 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4379(leave_whitespace)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/fft.py:1()\n", + " 2000/493 0.000 0.000 0.002 0.000 :121(__subclasscheck__)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1564(_load_fontmanager)\n", + " 1000 0.002 0.000 0.002 0.000 {built-in method torch.clamp}\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:1()\n", + " 8821 0.002 0.000 0.002 0.000 {method 'format' of 'str' objects}\n", + " 1141 0.000 0.000 0.002 0.000 {method 'min' of 'numpy.ndarray' objects}\n", + " 8765 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:456(istraceback)\n", + " 9122 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:300(ismethod)\n", + " 1000 0.002 0.000 0.002 0.000 {method 'addcmul_' of 'torch._C._TensorBase' objects}\n", + " 1000 0.002 0.000 0.002 0.000 {method 'add_' of 'torch._C._TensorBase' objects}\n", + " 1000 0.002 0.000 0.002 0.000 {built-in method torch._foreach_mul_}\n", + " 1581 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:61(_all)\n", + " 2674 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:405(_strip_comment)\n", + " 106 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2491(update_datalim)\n", + " 32 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1036(from_list)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tricontour.py:1()\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_address.py:1()\n", + " 75 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:279(__deepcopy__)\n", + " 482 0.000 0.000 0.002 0.000 :159(_path_isfile)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:970(json_load)\n", + " 409 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:499(copy)\n", + " 2000/493 0.001 0.000 0.002 0.000 {built-in method _abc._abc_subclasscheck}\n", + " 1004 0.002 0.000 0.002 0.000 {method 'clone' of 'torch._C._TensorBase' objects}\n", + " 36 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:347(_apply_params)\n", + " 122 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:747(_set_order_of_magnitude)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/__init__.py:274(load)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:157(Version)\n", + " 8765 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:480(iscode)\n", + " 519 0.000 0.000 0.002 0.000 :150(_path_is_mode_type)\n", + " 309 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(column_stack)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/JpegImagePlugin.py:1()\n", + " 28 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:182(_collapse_string_to_ranges)\n", + " 11 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2815(__new__)\n", + " 366 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(round_)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/__init__.py:1()\n", + " 1634 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:39(_amax)\n", + " 4698 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:70()\n", + " 668 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2432(all)\n", + " 8765 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:466(isframe)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:1()\n", + " 7 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:392(open)\n", + " 1000 0.002 0.000 0.002 0.000 {method 'lerp_' of 'torch._C._TensorBase' objects}\n", + " 2846 0.001 0.000 0.002 0.000 :128()\n", + " 1001 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:442(__init__)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2752(_get_renderer)\n", + " 59 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:678(Optional)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1()\n", + " 999 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:514(_format_maybe_minus_and_locale)\n", + " 1329 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:966(_auto_draw_if_interactive)\n", + " 386 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:626(translated)\n", + " 8 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2678(__init__)\n", + " 3764 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:99(check_in_list)\n", + " 2 0.002 0.001 0.002 0.001 {method 'sum' of 'torch._C._TensorBase' objects}\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:1()\n", + " 96 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1303(set_fontproperties)\n", + " 27 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/collections/__init__.py:348(namedtuple)\n", + " 90 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1201(update)\n", + " 241 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:279(validate_color_for_prop_cycle)\n", + " 2513 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:216(_is_nth_color)\n", + " 35 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:107()\n", + " 1141 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:43(_amin)\n", + " 790 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1191(score_weight)\n", + " 252 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2817(nonsingular)\n", + " 55/8 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3635(leave_whitespace)\n", + " 40 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:299(detect_encoding)\n", + " 999 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2897(_interval_contains_close)\n", + " 1000 0.001 0.000 0.001 0.000 {built-in method torch._C._linalg.linalg_vector_norm}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/html/__init__.py:1()\n", + " 488 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:93(_clip_dep_is_scalar_nan)\n", + " 118 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3231(__str__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/context.py:1()\n", + " 5578 0.001 0.000 0.001 0.000 {method 'match' of 're.Pattern' objects}\n", + " 790 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1173(score_stretch)\n", + " 882 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:64(check_isinstance)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_change.py:1()\n", + " 1000 0.001 0.000 0.001 0.000 {built-in method torch._C._group_tensors_by_device_and_dtype}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/__init__.py:1()\n", + " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/grad_mode.py:78(__enter__)\n", + " 11 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2795(_make_nmtuple)\n", + " 5 0.001 0.000 0.001 0.000 {built-in method torch.sqrt}\n", + " 114/57 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3722(copy)\n", + " 1761 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1277(__setattr__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axes3d.py:42(Axes3D)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives.py:1()\n", + " 36071 0.001 0.000 0.001 0.000 {built-in method builtins.callable}\n", + " 137 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(broadcast_arrays)\n", + " 584 0.001 0.000 0.001 0.000 :179(_get_module_lock)\n", + " 18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:662(cycler)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset11.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/__init__.py:299(loads)\n", + " 356 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:786(_finddoc)\n", + " 3 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:592(getmembers)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/decoder.py:332(decode)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/decoder.py:343(raw_decode)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:1()\n", + " 3 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:550(_getmembers)\n", + " 366 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3754(round_)\n", + " 42 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:323(read_or_stop)\n", + " 14 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:595(set_parse_action)\n", + " 1038 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2030(translate)\n", + " 19434 0.001 0.000 0.001 0.000 {method 'items' of 'dict' objects}\n", + " 9 0.001 0.000 0.001 0.000 {method 'readline' of '_io.BufferedReader' objects}\n", + " 394 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:794(unit)\n", + " 123 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1800(transform_path_affine)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1619(_get_renderer)\n", + " 33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2100(_signature_strip_non_python_syntax)\n", + " 388 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:923(_set_gc_clip)\n", + " 309 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/shape_base.py:612(column_stack)\n", + " 39 0.001 0.000 0.001 0.000 {built-in method io.open}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5798()\n", + " 10 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2398(_update_offset_text_position)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/random.py:26(manual_seed)\n", + " 1332 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1285(is_interactive)\n", + " 1149 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:786(get_transform)\n", + " 99/33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:95(__call__)\n", + " 137 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:480(broadcast_arrays)\n", + " 1000 0.001 0.000 0.001 0.000 {method 'addcdiv_' of 'torch._C._TensorBase' objects}\n", + " 4811 0.001 0.000 0.001 0.000 {built-in method builtins.sorted}\n", + " 363 0.000 0.000 0.001 0.000 :1599(_get_spec)\n", + " 18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:262(_trim_arity)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:609(_ensure_mutable)\n", + " 98 0.000 0.000 0.001 0.000 :105(__new__)\n", + " 14 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:675()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:603(_copy)\n", + " 37 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1029(get_path)\n", + " 8859 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1096(__new__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/deprecated.py:1()\n", + " 1 0.001 0.001 0.001 0.001 {method 'copy' of 'ImagingCore' objects}\n", + " 366 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(around)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1()\n", + " 518 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1279(_preprocess_math)\n", + " 106 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:930(update_from_data_xy)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/random.py:109(manual_seed_all)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/__init__.py:227(_lazy_call)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:213(format_stack)\n", + " 19 0.000 0.000 0.001 0.000 :73(find_spec)\n", + " 99/33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:346(__post_init__)\n", + " 700 0.000 0.000 0.001 0.000 :132(_path_split)\n", + "3360/2126 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2398()\n", + " 22 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4779(parseImpl)\n", + " 12 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:237(set_clip_path)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ndarray.py:1()\n", + " 860 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:735(unwrap)\n", + " 7 0.001 0.000 0.001 0.000 {method 'readlines' of '_io._IOBase' objects}\n", + " 462 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:890(get_unitless_position)\n", + "4867/4697 0.001 0.000 0.001 0.000 {method 'update' of 'dict' objects}\n", + " 396/33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:141(apply)\n", + " 1 0.001 0.001 0.001 0.001 {built-in method torch.full}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/api.py:1()\n", + " 1060 0.001 0.000 0.001 0.000 {method 'outer' of 'numpy.ufunc' objects}\n", + " 636 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:347(iter_segments)\n", + " 114/57 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3724()\n", + " 67 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:128(deprecate)\n", + " 999 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:245(fix_minus)\n", + " 571 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:213(register)\n", + " 1000 0.001 0.000 0.001 0.000 {method 'sqrt' of 'torch._C._TensorBase' objects}\n", + " 13070 0.001 0.000 0.001 0.000 {function RcParams.__getitem__ at 0x13d5fd440}\n", + " 1000 0.001 0.000 0.001 0.000 {built-in method torch.ones_like}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1()\n", + " 522 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2576(__init__)\n", + " 102 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1540(copy_with)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:20(Base)\n", + " 2 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:810(_init_axis)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:1()\n", + " 4345 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:198()\n", + " 2248 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1355(_iter_break_from_left_to_right)\n", + " 1151 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:163(match)\n", + " 1271 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:115(get_transform)\n", + " 3 0.001 0.000 0.001 0.000 {built-in method torch.cat}\n", + " 1001 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:221(__init__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/jit_utils.py:1()\n", + " 55 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3643()\n", + " 61 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(intersect1d)\n", + " 118 0.001 0.000 0.001 0.000 {built-in method builtins.compile}\n", + " 175 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:310(_to_rgba_no_colorcycle)\n", + " 60 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1531(__getitem__)\n", + " 2246 0.001 0.000 0.001 0.000 {built-in method matplotlib._path.affine_transform}\n", + " 3000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:8(_get_foreach_kernels_supported_devices)\n", + " 388 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:934(set_clip_path)\n", + " 288 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_normalizations.py:189(normalizer)\n", + " 1148 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2411(transform_non_affine)\n", + " 2 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5684(srange)\n", + " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:84(_get_value)\n", + " 60 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:829(_open_file_or_url)\n", + " 394 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:132(check_shape)\n", + " 16 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:292(draw)\n", + " 193 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3039(replace)\n", + " 12 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1871(apply_aspect)\n", + " 266/157 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1857(name)\n", + " 536 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:368(bounds)\n", + " 166 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:615(_from_any)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:1()\n", + " 546 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:178(sub)\n", + " 61 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:373(intersect1d)\n", + " 1000 0.001 0.000 0.001 0.000 {method 'reciprocal' of 'torch._C._TensorBase' objects}\n", + " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:97(_dispatch_sqrt)\n", + " 222 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:647(set_data)\n", + " 350 0.000 0.000 0.001 0.000 :1146(path_stats)\n", + " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/nn/utils/clip_grad.py:46()\n", + " 394 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:202(_update_values)\n", + " 435 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:814(set_size)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_notification.py:1()\n", + " 243 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1238(__init__)\n", + " 215/110 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1832(default_name)\n", + " 4731 0.001 0.000 0.001 0.000 {built-in method numpy.asanyarray}\n", + " 288 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_normalizations.py:190(normalizer_inner)\n", + " 2152 0.001 0.000 0.001 0.000 :380(__eq__)\n", + " 457 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:928(_json_decode)\n", + " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/grad_mode.py:82(__exit__)\n", + " 76 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:239(_get_xy_display)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/decomposition_table.py:1()\n", + " 7031 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1036(get_points)\n", + " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:309(_cuda_graph_capture_health_check)\n", + " 4008 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:946()\n", + " 42 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1615(__getitem__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_replacement.py:1()\n", + " 4 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/library.py:42(__init__)\n", + " 454 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:433(_tokenize)\n", + " 106 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:374(set_alpha)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_attachment.py:1()\n", + " 695 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:167(get_annotations)\n", + " 392 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2770(__str__)\n", + " 603 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:159(_type_convert)\n", + " 106 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(vstack)\n", + " 366 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3245(around)\n", + " 74 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1183(set_marker)\n", + " 38/18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4373(parseImpl)\n", + " 9401 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:293(axes)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImagePalette.py:1()\n", + " 213 0.000 0.000 0.001 0.000 :216(_lock_unlock_module)\n", + " 18351 0.001 0.000 0.001 0.000 {built-in method builtins.abs}\n", + " 70 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:257(rename_parameter)\n", + " 363 0.000 0.000 0.001 0.000 :778(spec_from_file_location)\n", + " 100 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2746(_revalidate)\n", + " 26 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:416(make_keyword_only)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2973(frombuffer)\n", + " 359 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:730(set_figure)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_configuration_override.py:1()\n", + " 684/532 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2377(_invalidate_internal)\n", + " 185 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:257(_recache)\n", + " 256/18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:414(visit)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:1()\n", + " 654 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:449(_field_init)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:1()\n", + " 67 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1089(reversed)\n", + " 178 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1612(transform_path_non_affine)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2896(new)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_location.py:1()\n", + " 25/6 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3816(streamline)\n", + " 490 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(concatenate)\n", + " 256/18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:420(generic_visit)\n", + " 582 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1782()\n", + " 5770 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1929(get_matrix)\n", + " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/grad_mode.py:73(__init__)\n", + " 1 0.001 0.001 0.001 0.001 {built-in method PIL._imaging.fill}\n", + " 62 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1352(__add__)\n", + " 338 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:437(set_transform)\n", + " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/nn/utils/clip_grad.py:61()\n", + " 518 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(ndim)\n", + " 35/5 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3675(streamline)\n", + " 3500 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:189()\n", + " 2000 0.001 0.000 0.001 0.000 {method 'to' of 'torch._C._TensorBase' objects}\n", + " 9073 0.001 0.000 0.001 0.000 {method 'group' of 're.Match' objects}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/registration.py:1()\n", + " 1464 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1203(set_y)\n", + " 74 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:241(_optimize_charset)\n", + " 726 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:367(_escape)\n", + " 26/14 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4108(parseImpl)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_common.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:1()\n", + " 1909 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1226(_is_dunder)\n", + " 3045 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3018()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_afm.py:1()\n", + " 3006 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:943()\n", + " 548 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:827(_set_new_attribute)\n", + " 350 0.000 0.000 0.001 0.000 :642(_classify_pyc)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_references.py:1()\n", + " 562 0.000 0.000 0.001 0.000 :1421(_path_importer_cache)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_stack.py:1()\n", + " 6758 0.001 0.000 0.001 0.000 {method 'endswith' of 'str' objects}\n", + " 1758 0.001 0.000 0.001 0.000 {method '__reduce_ex__' of 'object' objects}\n", + " 1027 0.001 0.000 0.001 0.000 {method 'detach' of 'torch._C._TensorBase' objects}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/resume_execution.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_reference.py:1()\n", + " 2 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1369(make_dataclass)\n", + " 78 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:234(_adjust_location)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1()\n", + " 44 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:66(__set_name__)\n", + " 11 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2797()\n", + " 1012 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1337(_to_unmasked_float_array)\n", + " 67 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1108()\n", + " 78/4 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:909(_parseCache)\n", + " 790 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1107(_expand_aliases)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:648(make_html_tags)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:13(glob)\n", + " 2770 0.001 0.000 0.001 0.000 {method 'reshape' of 'numpy.ndarray' objects}\n", + " 122 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(unique)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:590(_makeTags)\n", + " 106 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:223(vstack)\n", + " 2714 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:185(is_consecutive)\n", + " 12 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:57()\n", + " 1768 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:451(get)\n", + " 350 0.000 0.000 0.001 0.000 :675(_validate_timestamp_pyc)\n", + " 34 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:60(_iglob)\n", + " 123 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2037(_signature_bound_method)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/__init__.py:1()\n", + " 32 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:409(to_rgba_array)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:1()\n", + " 6590 0.001 0.000 0.001 0.000 {built-in method builtins.iter}\n", + " 217 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:263(decorator)\n", + " 584 0.001 0.000 0.001 0.000 :100(acquire)\n", + " 63 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3783(__init__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:1()\n", + " 63 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:818(__init__)\n", + " 4 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:647(__init__)\n", + " 219 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:240(_check_color_like)\n", + " 1030 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1192(set_x)\n", + " 27/7 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4409(streamline)\n", + " 4 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3316(tick_params)\n", + " 336 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:670()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:400(ParserElement)\n", + " 30 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:845(_hash_add)\n", + " 244 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:33(seterr)\n", + " 75 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:237(_deepcopy_method)\n", + " 8 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1189(_set_lim)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:1()\n", + " 584 0.001 0.000 0.001 0.000 :125(release)\n", + " 9571 0.001 0.000 0.001 0.000 {method 'pop' of 'list' objects}\n", + " 2000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:122()\n", + " 50 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:342(update_from)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_graph.py:1()\n", + " 123 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:228(_recursive_repr)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_content.py:1()\n", + " 112 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1171(_set_artist_props)\n", + " 125 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1155(update_from)\n", + " 1050 0.000 0.000 0.001 0.000 :84(_unpack_uint32)\n", + " 530 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:203()\n", + " 20 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4889(parseImpl)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2398(__init__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:105(_glob1)\n", + " 123 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:573()\n", + " 900 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:264()\n", + " 151 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1001(set_alpha)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:1()\n", + " 1758 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copyreg.py:104(__newobj__)\n", + " 30 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:638(_hash_fn)\n", + " 244 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1904(scale_range)\n", + " 341 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:736(set_style)\n", + " 636 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:368(field)\n", + " 388 0.001 0.000 0.001 0.000 {method '__exit__' of '_io._IOBase' objects}\n", + " 106 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:470(cleaned)\n", + " 22 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4956(parseImpl)\n", + " 10 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2791(_generateDefaultName)\n", + " 195 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1110()\n", + " 371 0.000 0.000 0.001 0.000 :173(__exit__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/__init__.py:1()\n", + " 3538/834 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:353(recursive_subclasses)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config.py:310()\n", + " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:39()\n", + " 120 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1181(set_position)\n", + " 2002 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:192(innermost_fn)\n", + " 4000 0.001 0.000 0.001 0.000 {built-in method torch._C._set_grad_enabled}\n", + " 95 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2257(p)\n", + " 122 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(ptp)\n", + " 378 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1504(__and__)\n", + " 629 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1324(is_math_text)\n", + " 356 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:776(_findclass)\n", + " 130 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(any)\n", + " 15 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2792(charsAsStr)\n", + " 1511 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2123(transform)\n", + " 2 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2294(__init__)\n", + " 122 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:138(unique)\n", + " 384 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:162(_fast_from_codes_and_verts)\n", + " 4000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:49()\n", + " 44 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:51(__init__)\n", + " 2198 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:65(wraps)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/utils.py:1()\n", + " 15957 0.001 0.000 0.001 0.000 {built-in method builtins.ord}\n", + " 44 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1345()\n", + " 38 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1586(__getitem__)\n", + " 36 0.000 0.000 0.001 0.000 :1408(_path_hooks)\n", + " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_contextlib.py:149(__new__)\n", + " 420 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2214()\n", + " 483 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:722(set_family)\n", + " 33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:364(_update_contains)\n", + " 16 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1126(_set_position)\n", + " 50 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:546()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:8(adjust_bbox)\n", + " 9000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_jit_internal.py:1109(is_scripting)\n", + " 341 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:749(set_variant)\n", + " 7930 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2736(name)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/__init__.py:1()\n", + " 530 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:283(axis_aligned_extrema)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:1()\n", + " 29 0.001 0.000 0.001 0.000 {method 'draw_glyphs_to_bitmap' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 366 0.001 0.000 0.001 0.000 {method 'round' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:542(_AxesBase)\n", + " 247 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:245(_collect_parameters)\n", + " 79 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3601(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/test_operators.py:1()\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:726(_get_transformed_path)\n", + " 42 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2984(parseImpl)\n", + " 5354 0.000 0.000 0.000 0.000 {method 'find' of 'str' objects}\n", + " 244 0.000 0.000 0.000 0.000 {method 'sum' of 'numpy.ndarray' objects}\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:299(_apply)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:1()\n", + " 108 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:982(set_color)\n", + " 502 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:396(_simple)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:440(_apply_tickdir)\n", + " 244 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(nonzero)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:1()\n", + " 2234 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1262(set_text)\n", + " 2399 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:247(match)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:1()\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:340(_broadcast_to)\n", + " 333 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1197(_set_markercolor)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:658(get_position)\n", + " 8634 0.000 0.000 0.000 0.000 {method 'rstrip' of 'str' objects}\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:497(_apply_tickdir)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1315(subplots_adjust)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2770(get_transformed_path_and_affine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_region.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes_impl.py:1()\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:473(__prepare__)\n", + " 2265 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:158(__len__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:175(_listdir)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:181(FigureBase)\n", + " 209 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1441(formatannotation)\n", + " 141 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1084(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_normalizations.py:1()\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:711(_transform_path)\n", + " 1213 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:450(get_transform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/make_functional.py:1()\n", + " 3031 0.000 0.000 0.000 0.000 :244(_verbose_message)\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1600(__getitem_inner__)\n", + " 225 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:455(__init__)\n", + " 233 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:314(_set_edgecolor)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:141(_iterdir)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2532(__init__)\n", + " 5610 0.000 0.000 0.000 0.000 {method 'pop' of 'dict' objects}\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2759(get_transformed_points_and_affine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:692()\n", + " 156/148 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:339(get_spine_transform)\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:33(parse)\n", + " 7100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2748(kind)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1138(set_linestyle)\n", + " 185 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:338(_set_artist_props)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:940(glob)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm_listed.py:1()\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2604(ptp)\n", + " 1599 0.000 0.000 0.000 0.000 {built-in method builtins.delattr}\n", + " 6000 0.000 0.000 0.000 0.000 {built-in method torch.is_grad_enabled}\n", + " 1554 0.000 0.000 0.000 0.000 :1032(__exit__)\n", + " 6495 0.000 0.000 0.000 0.000 {method '__contains__' of 'frozenset' objects}\n", + " 56 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:2081(getLogger)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:430(__enter__)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1054(set)\n", + " 1020 0.000 0.000 0.000 0.000 :405(parent)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:223(define_aliases)\n", + " 10/3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:14(__get__)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:323(_unique1d)\n", + " 466 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:75(_scale_dashes)\n", + " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/nn/utils/clip_grad.py:39()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/torch.py:1()\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:47(_sum)\n", + " 4798 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1563()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1()\n", + " 598 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2255(get_affine)\n", + " 150 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1833(frozen)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:980(__iter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:1()\n", + " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2333(any)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementPath.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/hooks.py:1()\n", + " 1554 0.000 0.000 0.000 0.000 :1028(__enter__)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:1603(_max_pool)\n", + " 92 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:788(frozen)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1053(set_color)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch.sin}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:1()\n", + " 6988 0.000 0.000 0.000 0.000 {method 'isidentifier' of 'str' objects}\n", + " 370 0.000 0.000 0.000 0.000 :71(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:1()\n", + " 1 0.000 0.000 0.000 0.000 {method 'unbind' of 'torch._C._TensorBase' objects}\n", + " 1 0.000 0.000 0.000 0.000 {method 'set_window_title' of '_macosx.FigureManager' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_exception.py:1()\n", + " 276 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:401(_tuple_str)\n", + " 3512 0.000 0.000 0.000 0.000 {built-in method builtins.issubclass}\n", + " 252 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:581(tiny)\n", + " 2000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:296()\n", + " 8/4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:981(__get__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_web_request.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/ElementTree.py:36(_get_py3_cls)\n", + " 56 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1327(getLogger)\n", + " 370 0.000 0.000 0.000 0.000 :198(cb)\n", + " 199 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:253(escape)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_web_response.py:1()\n", + " 3384 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:837()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_result_provenance.py:1()\n", + " 12/5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4092(streamline)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2973(re_match)\n", + " 6109 0.000 0.000 0.000 0.000 {method 'add' of 'set' objects}\n", + " 518 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3152(ndim)\n", + " 132 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:430(visit_Constant)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_text_helpers.py:1()\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:159(add)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_rectangle.py:1()\n", + " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:14(_get_fused_kernels_supported_devices)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2961(re)\n", + " 1 0.000 0.000 0.000 0.000 {method 'read' of '_io.TextIOWrapper' objects}\n", + " 260 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:282(_set_fillstyle)\n", + " 106 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(atleast_2d)\n", + " 1003 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:1002(__hash__)\n", + " 279 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2421(transform_path_non_affine)\n", + " 4001 0.000 0.000 0.000 0.000 {built-in method torch._C._get_privateuse1_backend_name}\n", + " 800 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:243(_keep_alive)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_stack_frame.py:1()\n", + " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:396(set_linestyle)\n", + " 432 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1289()\n", + " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:858(update_from_path)\n", + " 5533 0.000 0.000 0.000 0.000 {method 'values' of 'dict' objects}\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2536(_init)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1()\n", + " 94 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1095(set_fontsize)\n", + " 29 0.000 0.000 0.000 0.000 {method 'draw_text_image' of 'matplotlib.backends._backend_agg.RendererAgg' objects}\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:435(__exit__)\n", + " 148/39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1862(__str__)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2731(__init__)\n", + " 970 0.000 0.000 0.000 0.000 {method 'flatten' of 'numpy.ndarray' objects}\n", + " 388 0.000 0.000 0.000 0.000 :922(find_spec)\n", + " 564 0.000 0.000 0.000 0.000 {method 'sub' of 're.Pattern' objects}\n", + " 106 0.000 0.000 0.000 0.000 {built-in method matplotlib._path.cleanup_path}\n", + " 1400 0.000 0.000 0.000 0.000 :134()\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:379(wrapper)\n", + " 3937 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:700(get_size)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_fontconfig_pattern.py:57(_make_fontconfig_parser)\n", + " 494 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:683(_get_wrapped_text)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_logical_location.py:1()\n", + " 127 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:329(set_edgecolor)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:281(_ptp)\n", + " 64 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4349(__init__)\n", + " 804 0.000 0.000 0.000 0.000 {built-in method numpy.arange}\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:392(_fields_in_init_order)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_configuration.py:1()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2298(_init)\n", + " 460 0.000 0.000 0.000 0.000 :60(isabs)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method utcfromtimestamp}\n", + " 175/95 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:909(get_xaxis_transform)\n", + " 278 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2222(transform_non_affine)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:144(get_grid_positions)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_prims/executor.py:1()\n", + " 1799 0.000 0.000 0.000 0.000 {method 'replace' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:1()\n", + " 338 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1094(get_default_size)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_message.py:1()\n", + " 929 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2761(_set_dpi)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_version_control_details.py:1()\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1947(le)\n", + " 30 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(linspace)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_constrained_layout.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_graph_traversal.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_suppression.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:39(restore_bbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives.py:500(_register_ops)\n", + " 351 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:762(set_weight)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:732(set_transform)\n", + " 591 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:78(_is_private)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_edge.py:1()\n", + " 1279 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:284(tell)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:1()\n", + " 5650 0.000 0.000 0.000 0.000 {method 'strip' of 'str' objects}\n", + " 199 0.000 0.000 0.000 0.000 {method 'translate' of 'str' objects}\n", + " 512 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:341(intervaly)\n", + " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1624()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:18(_public_functions)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffTags.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:80(alphanums)\n", + " 917 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:755(_is_wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_location_relationship.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_sarif_log.py:1()\n", + " 341 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:788(set_stretch)\n", + " 3191 0.000 0.000 0.000 0.000 {method 'setdefault' of 'dict' objects}\n", + " 530 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:831(__setattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_edge_traversal.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:1()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:274(clear)\n", + " 1150 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1851(_str_equal)\n", + " 2873 0.000 0.000 0.000 0.000 {method 'rpartition' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_translation_metadata.py:1()\n", + " 2 0.000 0.000 0.000 0.000 {method 'clear' of 'matplotlib.backends._backend_agg.RendererAgg' objects}\n", + " 252 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:558(smallest_normal)\n", + " 67 0.000 0.000 0.000 0.000 {built-in method builtins.print}\n", + " 36 0.000 0.000 0.000 0.000 :1696(path_hook_for_FileFinder)\n", + " 25 0.000 0.000 0.000 0.000 {method 'draw_markers' of 'matplotlib.backends._backend_agg.RendererAgg' objects}\n", + " 3692 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:655(get_family)\n", + " 341 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:872(set_math_fontfamily)\n", + " 636/212 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2397()\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:1892(nonzero)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1062(close)\n", + " 166/90 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:989(get_yaxis_transform)\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1581(copy_with)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/function_base.py:23(linspace)\n", + " 636 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:287(__init__)\n", + " 72 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:945(_get_mixins_)\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:484(_parse_args)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:215(_get_draw_artists)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/html/entities.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:44(destroy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_reference.py:1()\n", + " 92 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:235(frozen)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1857(get_data_ratio)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:70(alphas)\n", + " 141 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1536()\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:242(x0)\n", + " 284 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:625(get_snap)\n", + " 105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:301(_remove_dups_flatten)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:785(set_subplotspec)\n", + " 3624 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:677(get_variant)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool_component_reference.py:1()\n", + " 3624 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:671(get_style)\n", + " 3624 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:692(get_stretch)\n", + " 29 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:353(_select_from)\n", + " 2785 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:841(get_visible)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:55(_chars_for_ranges)\n", + " 801 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1467(debug)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_run_automation_details.py:1()\n", + " 516 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:350(width)\n", + " 84 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:244(make_alias)\n", + " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1027(set_linespacing)\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:135(__init__)\n", + " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:81(atleast_2d)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_property_bag.py:1()\n", + " 3624 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:683(get_weight)\n", + " 61 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(zeros_like)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_relationship.py:1()\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:504(_from_parts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:169(destroy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_physical_location.py:1()\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1954(ge)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:434(_get_text1_transform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:155(MarkerStyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:787(PyExprCSEPass)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1221(set_markerfacecolor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_node.py:1()\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1526(__or__)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:868(__new__)\n", + " 188 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1246(set_verticalalignment)\n", + " 1134 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1345(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:805(copy)\n", + " 4005 0.000 0.000 0.000 0.000 {method 'values' of 'collections.OrderedDict' objects}\n", + " 83 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:361(decorator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/codegen.py:1()\n", + " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:919(set_capstyle)\n", + " 572 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:820(_set_qualname)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:844(_create_)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1416(ArtistInspector)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:14(install_config_module)\n", + " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:989(set_joinstyle)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:937(get_xaxis_text1_transform)\n", + " 2144 0.000 0.000 0.000 0.000 :1103(__eq__)\n", + " 274 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1043(set_visible)\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:132(geterr)\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/textwrap.py:470(indent)\n", + " 1 0.000 0.000 0.000 0.000 {function FigureManagerMac.destroy at 0x13eb8d580}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/relativedelta.py:1()\n", + " 4000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_utils.py:841(is_compiling)\n", + " 798 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:966()\n", + " 3635 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1809(get_affine)\n", + " 4 0.000 0.000 0.000 0.000 {built-in method torch.zeros}\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:316(delete_parameter)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2638(_update_offset_text_position)\n", + " 350 0.000 0.000 0.000 0.000 :599(_check_name_wrapper)\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1364()\n", + " 755 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2308(get_matrix)\n", + " 388 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/_distutils_hack/__init__.py:89(find_spec)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:491(_get_text1_transform)\n", + " 628 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:47(_is_dunder)\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:108(_clip_dep_invoke_with_casting)\n", + " 2598 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:740(dot)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_axes.py:104(set_title)\n", + " 1000 0.000 0.000 0.000 0.000 {built-in method torch.is_complex}\n", + " 2836 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:706(get_file)\n", + " 127 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:381(set_linewidth)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_deprecation.py:20(decorator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:294()\n", + " 2022 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2758(_get_dpi)\n", + " 106 0.000 0.000 0.000 0.000 {built-in method matplotlib._path.update_path_extents}\n", + " 593 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:750(__delattr__)\n", + " 557 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:252(y0)\n", + " 474 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:37(_is_descriptor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_multiformat_message_string.py:1()\n", + " 631 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:509(_init_param)\n", + " 1182 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:152()\n", + " 372 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:181(__init__)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1017(get_yaxis_text1_transform)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4084(__init__)\n", + " 494 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:284(get_rotation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:1()\n", + " 3644 0.000 0.000 0.000 0.000 {method 'lower' of 'str' objects}\n", + " 1292 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:670(_set)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:437(_get_text2_transform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:761(SetVariable)\n", + " 1797 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:425()\n", + " 2834 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:864(get_math_fontfamily)\n", + " 39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:56(parse_parts)\n", + " 600/586 0.000 0.000 0.000 0.000 {built-in method builtins.repr}\n", + " 3108 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:107(_copy_immutable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:1()\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:494(_get_text2_transform)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1630(make_norm_from_scale)\n", + " 413 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:356(height)\n", + " 127 0.000 0.000 0.000 0.000 {method 'any' of 'numpy.ndarray' objects}\n", + " 306 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:136(__new__)\n", + " 162 0.000 0.000 0.000 0.000 :71(join)\n", + " 1768 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:912()\n", + " 488 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1937(closeto)\n", + " 740 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1632(__eq__)\n", + " 769 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:192(__get__)\n", + " 385 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:734(get_path)\n", + " 1458 0.000 0.000 0.000 0.000 {method 'extend' of 'list' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:129()\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:963(get_xaxis_text2_transform)\n", + " 184 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2063(_signature_is_builtin)\n", + " 25 0.000 0.000 0.000 0.000 {method 'numpy' of 'torch._C._TensorBase' objects}\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:539(_get_data_path)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/library.py:65(define)\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:77(zeros_like)\n", + " 469 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:327(__set_name__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1814(Parser)\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3903(_generateDefaultName)\n", + " 6/3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:22(visit)\n", + " 14/12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1074(get_position)\n", + " 8 0.000 0.000 0.000 0.000 {built-in method torch._C.define}\n", + " 137 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:416(_broadcast_shape)\n", + " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2668(__init__)\n", + " 676 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:969(set_foreground)\n", + " 488 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:103(_clip_dep_is_byte_swapped)\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:260(contextmanager)\n", + " 86 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1112(set_zorder)\n", + " 152 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(result_type)\n", + " 2937 0.000 0.000 0.000 0.000 {method 'get' of 'mappingproxy' objects}\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1043(get_yaxis_text2_transform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_color_data.py:1()\n", + " 188 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:997(set_horizontalalignment)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch.cos}\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5368(__init__)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/textwrap.py:419(dedent)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3588(set_xlim)\n", + " 1666 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1758()\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:331(wrapper)\n", + " 1101 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:646(_is_classvar)\n", + " 176 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:82(opengroup)\n", + " 189 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:222(__init__)\n", + " 1258 0.000 0.000 0.000 0.000 {method 'count' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_fix.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:133()\n", + " 322 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:332(intervalx)\n", + " 2002 0.000 0.000 0.000 0.000 {built-in method torch._C._dynamo.eval_frame.set_eval_frame}\n", + " 1001 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:205(check)\n", + " 1184 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:933(get_rasterized)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:982()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1946(get_width_height)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4283(get_children)\n", + " 76 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:91()\n", + " 82 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2266(__init__)\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1324(__init_subclass__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:63()\n", + " 1071 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:109(__init__)\n", + " 3650 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:182(_deepcopy_atomic)\n", + " 591 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:58(_is_sunder)\n", + " 288 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:897(set_alpha)\n", + " 80 0.000 0.000 0.000 0.000 {method 'copy' of 'dict' objects}\n", + " 959 0.000 0.000 0.000 0.000 {method 'tolist' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:1()\n", + " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:287(deco_unary_ufunc)\n", + " 1785 0.000 0.000 0.000 0.000 {built-in method posix.fspath}\n", + " 387 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/textwrap.py:482(prefixed_lines)\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2915(__init__)\n", + " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:518(decorating_function)\n", + " 1101 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:654(_is_initvar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/linalg.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffTags.py:419(_populate)\n", + " 342 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/ma/core.py:587(filled)\n", + " 90 0.000 0.000 0.000 0.000 {built-in method builtins.sum}\n", + " 170 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:89(__getitem__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2858(__init__)\n", + " 252 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:476(__new__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1()\n", + " 38 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:65(deco_binary_ufunc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_special_locations.py:1()\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:191(_create_closed)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mlab.py:1()\n", + " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:559(_axis_map)\n", + " 2508 0.000 0.000 0.000 0.000 {built-in method _imp.release_lock}\n", + " 2508 0.000 0.000 0.000 0.000 {built-in method _imp.acquire_lock}\n", + " 2002 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:205(enable_dynamic)\n", + " 66 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:130(clone)\n", + " 265 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:410()\n", + " 1000 0.000 0.000 0.000 0.000 {built-in method torch._C._are_functorch_transforms_active}\n", + " 303 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1297(_val_or_rc)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1974(__init__)\n", + " 145 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:894(_parse_flags)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1123(set_linewidth)\n", + " 348/264 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1351(__hash__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset8.py:1()\n", + " 390 0.000 0.000 0.000 0.000 :357(__init__)\n", + " 309 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/shape_base.py:608(_column_stack_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/isoparser.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GifImagePlugin.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:14(delimited_list)\n", + " 36 0.000 0.000 0.000 0.000 :1559(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2360(Figure)\n", + " 36 0.000 0.000 0.000 0.000 :1684()\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1009(_find_new_)\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:213(__getattr__)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:354(get_transform)\n", + " 2000 0.000 0.000 0.000 0.000 {method '__exit__' of 'torch._C.DisableTorchFunctionSubclass' objects}\n", + " 127 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:55(_any)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:61(JitScalarType)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2034(set_params)\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/library.py:86(impl)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:1()\n", + " 354 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1945(_signature_get_user_defined_method)\n", + " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:744(_get_axis_name)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1214(set_rotation)\n", + " 36 0.000 0.000 0.000 0.000 :64(__init__)\n", + " 84 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3904()\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:183(__init__)\n", + " 125 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:453(set_capstyle)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:327(max)\n", + " 1666 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:211(vertices)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1437(__mul__)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1211(set_markeredgecolor)\n", + " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/backends/cuda/__init__.py:29(is_built)\n", + " 10 0.000 0.000 0.000 0.000 :1239(exec_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:737(_get_scale_docs)\n", + " 399 0.000 0.000 0.000 0.000 :180(_path_isabs)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1515(_set_title_offset_trans)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/isoparser.py:42(isoparser)\n", + " 228 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:33(_get_dash_pattern)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:100(OutputGraphState)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1407(set_dash_capstyle)\n", + " 192/186 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:434(_get_literal_prefix)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:1()\n", + " 730 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:79(groups)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:1345()\n", + " 1000 0.000 0.000 0.000 0.000 {method 'conj' of 'torch._C._TensorBase' objects}\n", + " 170 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:953(copy)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:819(set_figure)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2315(__init__)\n", + " 2 0.000 0.000 0.000 0.000 :412(realpath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:235()\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2485(get_ticks_position)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:213(_get_version)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1231(set_markerfacecoloralt)\n", + " 744 0.000 0.000 0.000 0.000 {built-in method _thread.allocate_lock}\n", + " 10 0.000 0.000 0.000 0.000 {built-in method _imp.exec_dynamic}\n", + " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:61(_module_dir)\n", + " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/__init__.py:139(_tensor_or_tensors_to_tuple)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/abc.py:1()\n", + " 1938 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2824(_amin_dispatcher)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:457()\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2516(_process_unit_info)\n", + " 2000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/jit/__init__.py:124(annotate)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:215(connect)\n", + " 1962 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2698(_amax_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/hooks.py:6(Hooks)\n", + " 472 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2678(get_matrix)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1()\n", + " 14 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5585(__init__)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2269(setter)\n", + " 200 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:164(_copy_docstring_and_deprecators)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:1()\n", + " 860 0.000 0.000 0.000 0.000 {method 'rfind' of 'str' objects}\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/deprecated.py:41(setup_docs)\n", + " 48 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:57(_strip_init_py)\n", + " 148 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1267(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/fnmatch.py:48(filter)\n", + " 306/282 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:159(__init__)\n", + " 1233 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:78()\n", + " 152 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:565(__getitem__)\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:187(finalize)\n", + " 107 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:935(_check_for_existing_members_)\n", + " 151 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2075(_signature_is_functionlike)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1065(set_drawstyle)\n", + " 2862 0.000 0.000 0.000 0.000 {built-in method math.factorial}\n", + " 499 0.000 0.000 0.000 0.000 :67(_relax_case)\n", + " 2000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:141(graph_break)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:548()\n", + " 698 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:255(iter_fields)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:962(_get_markerfacecolor)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:514(_get_config_or_cache_dir)\n", + " 18 0.000 0.000 0.000 0.000 {built-in method _functools.reduce}\n", + " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:493(set_hatch)\n", + " 118 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:301(set_antialiased)\n", + " 1 0.000 0.000 0.000 0.000 /Users/vrajpandya/repo/intern_challenge/placement.py:210()\n", + " 582 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:69(_is_internal_class)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:595(OrtBackend)\n", + " 495 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2646(get_matrix)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/texmanager.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:1()\n", + " 415 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:207(_arrays_for_stack_dispatcher)\n", + " 72 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:981(_find_data_type_)\n", + " 2 0.000 0.000 0.000 0.000 :421(_joinrealpath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/shlex.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:304(GPS)\n", + " 247 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1872(inverted)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:236()\n", + " 2002 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:188(nothing)\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:452(_no_nep50_warning)\n", + " 633 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:437(_field_assign)\n", + " 131 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1915(__eq__)\n", + " 12/2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1503(makeOptionalList)\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:408(tokenize)\n", + " 98 0.000 0.000 0.000 0.000 {built-in method _abc._abc_init}\n", + " 74 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1041(set_fontfamily)\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:384(_mk_bitmap)\n", + " 351 0.000 0.000 0.000 0.000 :48(_new_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend.py:342(Legend)\n", + " 632 0.000 0.000 0.000 0.000 :41(_get_sep)\n", + " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:562()\n", + " 170 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:771(__copy__)\n", + " 537 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:180(validator)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1359(set_dash_joinstyle)\n", + " 68 0.000 0.000 0.000 0.000 {method 'clear' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:744()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:1()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3822(set_ylim)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2202(_get_ticks_position)\n", + " 34 0.000 0.000 0.000 0.000 :229(expanduser)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:43(parse)\n", + " 60 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1317()\n", + " 1000 0.000 0.000 0.000 0.000 {built-in method math.sqrt}\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2013(_validate_steps)\n", + " 121 0.000 0.000 0.000 0.000 :319(decode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1646(convert_class)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/backends/registry.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:344(Slider)\n", + " 1168 0.000 0.000 0.000 0.000 {method '__exit__' of '_thread.lock' objects}\n", + " 108 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:287(_deduplicate)\n", + " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:135(get_patch_transform)\n", + " 1038 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:767(rotation_point)\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2324(blended_transform_factory)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:785(_set_tickdown)\n", + " 1101 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:660(_is_kw_only)\n", + " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:473(set_joinstyle)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:273(__bool__)\n", + " 1338 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2119(get_matrix)\n", + " 183 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:668(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:281(_make_selector)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:238(Dvi)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1423(set_solid_capstyle)\n", + " 1128 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:904(get_text)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:1()\n", + " 801 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1734(isEnabledFor)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1663(__call__)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:592()\n", + " 58 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:479(lru_cache)\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1378(_fixupParents)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_fontconfig_pattern.py:59(comma_separated)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:349(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:536(OrtBackendOptions)\n", + " 42 0.000 0.000 0.000 0.000 {method 'sort' of 'list' objects}\n", + " 60 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2752(replace)\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:45(allow_rasterization)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_color_data.py:989()\n", + " 215 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:19(is_public_function)\n", + " 58 0.000 0.000 0.000 0.000 :778(__contains__)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:49(make_function_id_set)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:415(cycler)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:467(__getitem__)\n", + " 378 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:568(isstring)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1375(set_solid_joinstyle)\n", + " 175 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:465(_get_charset_prefix)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:561(_setResultsName)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2941(_wait_cursor_for_draw_cm)\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1922(__init__)\n", + " 512 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:868(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:260(compile_pattern)\n", + " 137 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:538()\n", + " 1000 0.000 0.000 0.000 0.000 {built-in method torch._C._has_torch_function}\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:76(set_base)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3086(ArrowStyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:1()\n", + " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1317(set_usetex)\n", + " 146 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffTags.py:26(__new__)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:765(_set_tickleft)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:171(GuardBuilder)\n", + " 1184 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:960(get_agg_filter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:588(matplotlib_fname)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1700(update_units)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:101(VariableTracker)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1392(__radd__)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:482(anchored)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:1()\n", + " 587 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:76(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/fnmatch.py:38(_compile_pattern)\n", + " 522 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:298(axes)\n", + " 1050 0.000 0.000 0.000 0.000 {built-in method from_bytes}\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:687(Literal)\n", + " 64 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:536(__str__)\n", + " 94 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(copyto)\n", + " 1001 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:751(__init__)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:505(set_pickradius)\n", + " 1 0.000 0.000 0.000 0.000 {method 'throw' of 'generator' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset12.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/proj3d.py:1()\n", + " 2 0.000 0.000 0.000 0.000 {method 'set_cursor' of '_macosx.FigureCanvas' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext_data.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2802(NavigationToolbar2)\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1615(raise_if_exceeds)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:2533(SpanSelector)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/patcher.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:213(OutputGraph)\n", + " 16/8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:164(get_converter)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4147(_generateDefaultName)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:1()\n", + " 17 0.000 0.000 0.000 0.000 {built-in method torch._C.impl}\n", + " 999 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:283(get_loc)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3005(set_size_inches)\n", + " 388 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:914(set_antialiased)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3497(get_xbound)\n", + " 440 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:246(_get_multialignment)\n", + " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:967(__init__)\n", + " 156/148 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:202(_ensure_position_is_set)\n", + " 1236 0.000 0.000 0.000 0.000 {built-in method _thread.get_ident}\n", + " 1000 0.000 0.000 0.000 0.000 {method 'numel' of 'torch._C._TensorBase' objects}\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2271()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2240(LogLocator)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1189(reversed)\n", + " 23 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4948(__init__)\n", + " 1047 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:193(_reshape_dispatcher)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:474(_cycler)\n", + " 316 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:878(_convert_validator_spec)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:84(TransformNode)\n", + " 40 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1149(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/optimizer.py:1()\n", + " 32 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:497()\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:220(decorate)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:75(_apply)\n", + " 68 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:42(get_hinting_flag)\n", + " 1056 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:223(codes)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1069(_update_transScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:615(RangeSlider)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:27(Collection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:1()\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1820(__init_subclass__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1341(TextBox)\n", + " 37 0.000 0.000 0.000 0.000 :164(_path_isdir)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:609(gen_candidates)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:450(DebugActions)\n", + " 1016 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1331(get_usetex)\n", + " 754 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:396()\n", + " 90 0.000 0.000 0.000 0.000 :878(__iter__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1181(_gen_axes_patch)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3547(get_xlim)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_result.py:28(Result)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:54(literal_eval)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:981(resolve)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:242(__set_name__)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5590(__add__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:118(pyparsing_unicode)\n", + " 32 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:667(__init__)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1719(set)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:38(Axis)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:43(Instruction)\n", + " 189 0.000 0.000 0.000 0.000 {built-in method _sre.compile}\n", + " 1001 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:754(__enter__)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:765(__truediv__)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:427(getArtifactLogger)\n", + " 988 0.000 0.000 0.000 0.000 {built-in method math.cos}\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4148()\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1447(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ndarray.py:174(ndarray)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:779(_set_tickup)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2282(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:130(filterwarnings)\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:267(onnx_symbolic)\n", + " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:533(copy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:716(ContourSet)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:229(_connect_picklable)\n", + " 292 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:239(__iter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageOps.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:596(Axis)\n", + " 120/78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1637(__hash__)\n", + " 388 0.000 0.000 0.000 0.000 {built-in method _imp.find_frozen}\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:59(FunctionIdSet)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/diagnostics.py:1()\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:206(_from_iter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_invocation.py:17(Invocation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:101(resize)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:530(_make_child)\n", + " 1876 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:847()\n", + " 42 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:546(__fspath__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:873(_set_lim_and_transforms)\n", + " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:270(get_patch_transform)\n", + " 99 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builtin.py:396(__init__)\n", + " 90 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2218()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:294(HammerAxes)\n", + " 984 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3031(parameters)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:552(get_configdir)\n", + " 1017 0.000 0.000 0.000 0.000 {built-in method math.radians}\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:24(_prevent_rasterization)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:359(LightSource)\n", + " 1105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2214(cast)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:52(__init__)\n", + " 12 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(cumsum)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1017()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3750(get_ybound)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:771(_set_tickright)\n", + " 794 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1338()\n", + " 189 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:954(fix_flags)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_util.py:1()\n", + " 70 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:775(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:246(AitoffAxes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/nn_module.py:1()\n", + " 468 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:348()\n", + " 164 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:140(validate_bool)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:523(shrunk_to_aspect)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3738(LassoSelector)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:412(get_subplot_params)\n", + " 2075 0.000 0.000 0.000 0.000 {built-in method builtins.chr}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1518(_cached_realpath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:72(ContourLabeler)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:413(LambertAxes)\n", + " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:132(__getstate__)\n", + " 244 0.000 0.000 0.000 0.000 {method 'nonzero' of 'numpy.ndarray' objects}\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1966(clear)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:341(MollweideAxes)\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:71(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/common.py:422()\n", + " 42 0.000 0.000 0.000 0.000 :771(get)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:4054(FancyArrowPatch)\n", + " 54 0.000 0.000 0.000 0.000 :674(__getitem__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:59(_convert_to_version)\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:386()\n", + " 74 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:214(_compile_charset)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1908(_set_device_pixel_ratio)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:909(home)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1031(get_hatch_path)\n", + " 39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2981(_generateDefaultName)\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:207(_apply_tickdir)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3800(get_ylim)\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:431(__iadd__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2106(IdentityTransform)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1241(set_markeredgewidth)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:1061()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1330(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1307(rruleset)\n", + " 32 0.000 0.000 0.000 0.000 :941(update)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:299(set_position)\n", + " 1004 0.000 0.000 0.000 0.000 {built-in method torch._C._has_torch_function_unary}\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1632(get_minor_ticks)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trifinder.py:1()\n", + " 350 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/textwrap.py:479(predicate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2338(CompositeGenericTransform)\n", + " 988 0.000 0.000 0.000 0.000 {built-in method math.sin}\n", + " 353 0.000 0.000 0.000 0.000 :1097(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:58(_timelex)\n", + " 385 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:734(unit_rectangle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:78()\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4424()\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:150(ones)\n", + " 3 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(inv)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:110(_weak_or_strong_ref)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:399(_patch_step_function)\n", + " 170 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:677(__init__)\n", + " 264 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:432()\n", + " 21/20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1640(__repr__)\n", + " 790 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1145(score_style)\n", + " 318 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:781(__iter__)\n", + " 754 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1101()\n", + " 61 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(empty_like)\n", + " 790 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1209(score_size)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1633(nonsingular)\n", + " 388 0.000 0.000 0.000 0.000 :748(find_spec)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/fx/passes/fake_tensor_prop.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:97()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:43(Tick)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2264()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/BmpImagePlugin.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:314(_POERules)\n", + " 176 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:429()\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:734(_get_shared_axes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_prims/context.py:1()\n", + " 507 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:166(__setitem__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:32(GuardFn)\n", + " 24/23 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1475(__repr__)\n", + " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1609()\n", + " 192 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1773(__array__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1989(_switch_canvas_and_return_print_method)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:216(Line2D)\n", + " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:137(__setstate__)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1043()\n", + " 1029 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2740(default)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:469(inv)\n", + " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1000(set_linewidth)\n", + " 134 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1862(_str_lower_equal)\n", + " 46 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:110(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1679(_make_norm_from_scale)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1078(putchunk)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:353(profile_hook_step)\n", + " 492 0.000 0.000 0.000 0.000 {built-in method builtins.divmod}\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:64()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/make_functional.py:254(FunctionalModuleWithBuffers)\n", + " 860 0.000 0.000 0.000 0.000 {built-in method sys.getrecursionlimit}\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1043(_translate_tick_params)\n", + " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:218(_vhstack_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3807(FancyBboxPatch)\n", + " 371 0.000 0.000 0.000 0.000 :165(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1284(__instancecheck__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1773(__class_getitem__)\n", + " 385 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:542()\n", + " 67/55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:224(_type_repr)\n", + " 22 0.000 0.000 0.000 0.000 :162(find_spec)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3814(PolygonSelector)\n", + " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:340(_optimizer_step_code)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2293(BoxStyle)\n", + " 668 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2427(_all_dispatcher)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:651(cache)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2011(__init_subclass__)\n", + " 663 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:892(get_clip_path)\n", + " 326 0.000 0.000 0.000 0.000 {built-in method sys.intern}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:1()\n", + " 732 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3241(_around_dispatcher)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1547(__subclasscheck__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:29(Cursors)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1573(get_matrix)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:670(Rectangle)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2523(cumsum)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:745(_draw_disabled)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:1()\n", + " 494 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:601(get_wrap)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3569(_validate_converted_limits)\n", + " 494 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:292(get_transform_rotates_text)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2243(mpl_connect)\n", + " 790 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1162(score_variant)\n", + " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:344(__len__)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1256(set_markersize)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset17.py:1()\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1737(__call__)\n", + " 1001 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:757(__exit__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1259(Arrow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2658(ConnectionStyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_reductions_impl.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/mps/__init__.py:42(manual_seed)\n", + " 125 0.000 0.000 0.000 0.000 {method '__deepcopy__' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:128()\n", + " 67 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:191(__getitem__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:199(VariableBuilder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:85(identchars)\n", + " 58 0.000 0.000 0.000 0.000 {built-in method builtins.round}\n", + " 105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1443(repl)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/linalg.py:33(linalg_errors)\n", + " 51 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:394()\n", + " 488 0.000 0.000 0.000 0.000 {built-in method math.log10}\n", + " 189 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:73(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset7.py:1()\n", + " 262 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:124()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:571(get_cachedir)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:4394(ConnectionPatch)\n", + " 244 0.000 0.000 0.000 0.000 {built-in method numpy.seterrobj}\n", + " 530 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:242(degree)\n", + " 154 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:757(preParse)\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:195(_set_labelrotation)\n", + " 440 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:317(get_rotation_mode)\n", + " 222 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1329()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:1()\n", + " 121 0.000 0.000 0.000 0.000 {built-in method _codecs.utf_8_decode}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset14.py:1()\n", + " 23 0.000 0.000 0.000 0.000 {built-in method posix.lstat}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/mps/__init__.py:15(_get_default_mps_generator)\n", + " 52 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3819()\n", + " 790 0.000 0.000 0.000 0.000 {built-in method builtins.vars}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_legacy.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1212(AnnotationBbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:26(GridSpecBase)\n", + " 341 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:844(set_file)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._mps_get_default_generator}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:116(UserErrorType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:211(BboxBase)\n", + " 518 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1347(get_parse_math)\n", + " 118 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:310(ismethoddescriptor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:29(format_list)\n", + " 170 0.000 0.000 0.000 0.000 {method 'astype' of 'numpy.ndarray' objects}\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:125()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:578(_ReducedHCT_Element)\n", + " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:111(set_)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:297(get_joinstyle)\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:81(in_base)\n", + " 1 0.000 0.000 0.000 0.000 {method 'close' of '_io.BufferedRandom' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:42(CompatibilityFiles)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:24(BaseListVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:430(OrtExecutionInfoPerSession)\n", + " 57 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:444(_uniq)\n", + " 4 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(diff)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:348(SymmetricalLogTransform)\n", + " 248 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2271()\n", + " 848 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1367(depth)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:189(BezierSegment)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1046()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1949(Cursor)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2786(get_affine)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:955(x0)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm.py:1()\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1041(set_antialiased)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:72()\n", + " 2 0.000 0.000 0.000 0.000 {built-in method posix.scandir}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:99(identbodychars)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:186(__init__)\n", + " 822 0.000 0.000 0.000 0.000 {method '__subclasses__' of 'type' objects}\n", + " 242 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3614()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/random.py:1()\n", + " 42 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:329(find_cookie)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:397()\n", + " 222 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1335()\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1100(set_gapcolor)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1377(expanduser)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1685(_safe_first_finite)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:60(SideEffects)\n", + " 549 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:884(get_clip_on)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3056(ToolHandles)\n", + " 346 0.000 0.000 0.000 0.000 {method 'ravel' of 'numpy.ndarray' objects}\n", + " 488 0.000 0.000 0.000 0.000 {built-in method numpy.geterrobj}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:1428(TrackedFake)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:430(ImageFileDirectory_v2)\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1234()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:878(CheckFunctionManager)\n", + " 123 0.000 0.000 0.000 0.000 :146(update_abstractmethods)\n", + " 557 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:888(get_clip_box)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4758(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1090(TimerBase)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3063(__hash__)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1867(_set_formatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1034(NonUniformImage)\n", + " 184 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:505(isbuiltin)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/comptime.py:1()\n", + " 183 0.000 0.000 0.000 0.000 {method 'sort' of 'numpy.ndarray' objects}\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:657(stem)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1052()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:641(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/table.py:37(Cell)\n", + " 518 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3148(_ndim_dispatcher)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:298(set_rotation_mode)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:992(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:985(intervalx)\n", + " 388 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1004(set_url)\n", + " 452 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:611(get_gid)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/fx/_compatibility.py:24(mark_not_back_compat)\n", + " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:108(get)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1096(write)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1008(stat)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:513(format)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:24(Path)\n", + " 694 0.000 0.000 0.000 0.000 {method 'copy' of 'list' objects}\n", + " 490 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:152(concatenate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:134(Diagnostics)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:2945(ToolLineHandles)\n", + " 367 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:426(_get_iscased)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3727(_setResultsName)\n", + " 648 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:754()\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:137(_max_pool)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:152(GraphArg)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PpmImagePlugin.py:1()\n", + " 284 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:939(set_dashes)\n", + " 899 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:589()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_casting_dicts.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:208(OffsetBox)\n", + " 500 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1128(sticky_edges)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:21(ActivationWrapper)\n", + " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:182(_validate_hatch_pattern)\n", + " 467 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:849(get_in_layout)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_reductions_impl.py:24(_deco_axis_expand)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:550(set_markevery)\n", + " 568 0.000 0.000 0.000 0.000 {method 'keys' of 'dict' objects}\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:523(_format_parsed_parts)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:586(set_clip_box)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:56(draw_idle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/constant.py:1()\n", + " 88 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:146(__init__)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:46(__new__)\n", + " 14 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/fft.py:11(upcast)\n", + " 99 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:66(__call__)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:346(__init__)\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:200(__setitem__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1671(FigureCanvasBase)\n", + " 292 0.000 0.000 0.000 0.000 {method 'find' of 'bytearray' objects}\n", + " 222 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2264()\n", + " 350 0.000 0.000 0.000 0.000 {built-in method _imp._fix_co_filename}\n", + " 24/23 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1481()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:39(RuntimeTypeCheckState)\n", + " 392 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:723(get_path_effects)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/config.py:1()\n", + " 344 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:801()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:238(reload_library)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1245(is_dir)\n", + " 169 0.000 0.000 0.000 0.000 {built-in method numpy.empty}\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:135(__init__)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copyreg.py:113(_slotnames)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5716()\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:74(from_sarif)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1621()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2856(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:27(Patch)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:125(_unpack_tuple)\n", + " 730 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:57(_no_op_decorator)\n", + " 404 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:254(should_simplify)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/function_base.py:1320(diff)\n", + " 374 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:541(locator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/testing.py:1()\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4879(__init__)\n", + " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:321(set_antialiased)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:582(get_data_path)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:307(_class_escape)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:569(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:528(set_results_name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/abc.py:56(Traversable)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:300(get_capstyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:65(_single_shot_timer)\n", + " 404 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:242(simplify_threshold)\n", + " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1012(set_snap)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5711()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:141(InstructionTranslatorGraphState)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset16.py:1()\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:882(wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1788()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:4182(Lasso)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:52(checkcache)\n", + " 187 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:31(_combine_flags)\n", + " 22 0.000 0.000 0.000 0.000 :370(_get_module_info)\n", + " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:664(get_sketch_params)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:294(__init__)\n", + " 99 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:331(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:157(Transpose)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:336(_validate_cmap)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:936(get_markeredgecolor)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:227(__getitem__)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:458(format_frame_summary)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:1()\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:959(reset_cache)\n", + " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:466(__enter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:27(JoinStyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_prims/context.py:82(TorchRefsMode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/make_functional.py:310(FunctionalModule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:198(update_user_library)\n", + " 437 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1243(name)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1697(Norm)\n", + " 453 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:234(__init__)\n", + " 2 0.000 0.000 0.000 0.000 :27(isfile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:1()\n", + " 362 0.000 0.000 0.000 0.000 :413(has_location)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:97(LoggingTensorHandler)\n", + " 95 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2205(parse_name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:490(enter_context)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1922(Arc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1969()\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:236(set_locs)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/resume_execution.py:312(ContinueExecutionCache)\n", + " 131 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1711(set_whitespace_chars)\n", + " 102 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:24(__init__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:546(__exit__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:441(_validate_papersize)\n", + " 156 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1924(__hash__)\n", + " 54 0.000 0.000 0.000 0.000 :756(encode)\n", + " 19 0.000 0.000 0.000 0.000 {method 'write' of '_io.BufferedRandom' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1339(LocationEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4757(_MultipleMatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/quiver.py:443(Quiver)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:965(x1)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:193(FrameStateSizeEntry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1615(Annotation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:996(CheckButtons)\n", + " 1 0.000 0.000 0.000 0.000 {method 'float' of 'torch._C._TensorBase' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:1()\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:362(size)\n", + " 350 0.000 0.000 0.000 0.000 :1122(get_filename)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1111(mkdir)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:67(new_class)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset11.py:92(_apply)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:1()\n", + " 59 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:228(_acquireLock)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:265(getuntil)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:119(CapStyle)\n", + " 388 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:807(restore)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:153(RendererBase)\n", + " 288 0.000 0.000 0.000 0.000 :1565()\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:877(_make_child_relpath)\n", + " 325 0.000 0.000 0.000 0.000 {method 'values' of 'mappingproxy' objects}\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:273(validate_color_or_auto)\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:462(_validate_linestyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1314(FancyArrow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/win.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:340()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:786(_add_axes_internal)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:349(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1827(set_major_formatter)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:960(y0)\n", + " 286 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:552(formatter)\n", + " 262 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:930(set_clip_rectangle)\n", + " 2 0.000 0.000 0.000 0.000 {built-in method torch.zeros_like}\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset11.py:349(_interpolate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_binary_ufuncs_impl.py:1()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3123(set_axisbelow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool_component.py:19(ToolComponent)\n", + " 50 0.000 0.000 0.000 0.000 {method 'remove' of 'list' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/resume_execution.py:33(ReenterWith)\n", + " 18 0.000 0.000 0.000 0.000 {method 'findall' of 're.Pattern' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_run.py:30(Run)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs_impl.py:1()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:754(set_clip_box)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4430(_generateDefaultName)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:440()\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/random.py:39(deco_stream)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:222(__init__)\n", + " 183 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:630()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:2166(InliningInstructionTranslator)\n", + " 51 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:239(splitroot)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:18(PolarTransform)\n", + " 38 0.000 0.000 0.000 0.000 :309(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:111()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:13(Level)\n", + " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:357(validate_fontsize)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:123(_SymbolicFunctionGroup)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1701(__init__)\n", + " 150 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1232(__reduce_ex__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1719(__init__)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:692(max)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:177(Resampling)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1401(MouseButton)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow.py:16(ThreadFlow)\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2107(_clip_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:14(Spine)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/function.py:307(__init__)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:1068(_interpolate_helper)\n", + " 172 0.000 0.000 0.000 0.000 :835(__iter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:247(TorchHigherOrderOperatorVariable)\n", + " 150 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:898(get_position)\n", + " 2 0.000 0.000 0.000 0.000 :110(register)\n", + " 201 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:59(func)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:753()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:64(OverrideDict)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset15.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:343(Interop)\n", + " 217 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:234(parse_args)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:226(set_prop_cycle)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._get_operation_overload}\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3461(export)\n", + " 350 0.000 0.000 0.000 0.000 :931(create_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3596(ParseExpression)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:426(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builtin.py:56(BuiltinVariable)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method posix.getcwd}\n", + " 4 0.000 0.000 0.000 0.000 {built-in method torch._C._dispatch_library}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1763(AffineBase)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:309(_convert)\n", + " 156 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:558(__getattr__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:313(select_from)\n", + " 59 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:237(_releaseLock)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/fnmatch.py:74(translate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext_data.py:464()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/testing.py:15(pyparsing_test)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:297(HammerTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/quiver.py:870(Barbs)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:416(LambertTransform)\n", + " 2 0.000 0.000 0.000 0.000 {built-in method _abc._abc_register}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:474(SizeVariable)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_legacy.py:15(deprecated)\n", + " 125 0.000 0.000 0.000 0.000 {built-in method numpy.zeros}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:22(_NodeMissingOnnxShapeInference)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:834(get_clip_path)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:249(AitoffTransform)\n", + " 462 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1147(__init__)\n", + " 66 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:356(_aggregate_mutables)\n", + " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1844(set_name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:273(DefaultsSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/mutation_guard.py:1()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:264(get_aliased_and_aliases)\n", + " 57 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2463()\n", + " 38 0.000 0.000 0.000 0.000 {method 'splitlines' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GifImagePlugin.py:39(LoadingStrategy)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1613(__invert__)\n", + " 8 0.000 0.000 0.000 0.000 {built-in method torch._C._dispatch_has_kernel_for_dispatch_key}\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:260(points_to_pixels)\n", + " 136 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1549()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_version_control_details.py:15(VersionControlDetails)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/comptime.py:18(ComptimeVar)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/__init__.py:36(__deprecate_private_class)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:68(StatsProfile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1693(Annulus)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2789(_Mode)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:1794(_adaptive_pool)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:351(IFD)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:849(__init__)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:503(_cmpkey)\n", + " 34 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:297(__getitem__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:934(_scandir)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives_impl.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_unary_ufuncs_impl.py:1()\n", + " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2345(parseImpl)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_globals.py:1()\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1091()\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3399(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2890(Regex)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:344(MollweideTransform)\n", + " 216 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1757()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2028(_staircase)\n", + " 2 0.000 0.000 0.000 0.000 {built-in method posix.access}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:368(FigureCanvasAgg)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/fx/passes/fake_tensor_prop.py:12(FakeTensorProp)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:964(StepPatch)\n", + " 46 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:515(_from_parsed_parts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:208(__getattr__)\n", + " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:487(__exit__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:168(Transform)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1893(set_major_locator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_content.py:15(ArtifactContent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:188(InvertedPolarTransform)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:335(_interpolate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:507(PythonSysModulesVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1823(_MathStyle)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:1716(_avg_pool)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:16(CheckpointImpl)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:204(TensorProperty)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:201(LogTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_properties.py:25(ExternalProperties)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2820(parseImpl)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4739(__init__)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:506(suppress_matplotlib_deprecation_warning)\n", + " 200 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:345()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2177(BlendedGenericTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:272(InvertedAitoffTransform)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:755(get_remove_overlapping_locs)\n", + " 122 0.000 0.000 0.000 0.000 {method 'reset' of '_contextvars.ContextVar' objects}\n", + " 84 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:603()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:964(__len__)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1269(_process)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:686(_register_basic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:202(SymbolicRegistry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:763(GraphicsContextBase)\n", + " 62 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:266(_check_generic)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1853(set_minor_formatter)\n", + " 149 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/collections/__init__.py:422()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1814(Affine2DBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_location.py:12(ArtifactLocation)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:3552(_unsupported_dropout)\n", + " 122 0.000 0.000 0.000 0.000 {method 'set' of '_contextvars.ContextVar' objects}\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:289(_avg_pool)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:51(DynamoCallbackFn)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:610(Shadow)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:4978(_one_hidden_rnn)\n", + " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:147(lazycache)\n", + " 216 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1756()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_layoutgrid.py:1()\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:1888(_nonzero_dispatcher)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:383(decorator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1502(add_gridspec)\n", + " 109 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:772(rotation_point)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:967(_find_data_repr_)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:316(InvertedHammerTransform)\n", + " 67 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:205()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:287(wrapper)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5451(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:456(InvertedLambertTransform)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:188(caching_module_getattr)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:363()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_rectangle.py:12(Rectangle)\n", + " 114 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:260()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:209(Quantize)\n", + " 332 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1248(value)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:196(Dither)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:386(InvertedMollweideTransform)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3054(_hash_basis)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1611(set_aspect)\n", + " 244 0.000 0.000 0.000 0.000 {built-in method math.floor}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2698(_Base)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2611(set_layout_engine)\n", + " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1335(set_parse_math)\n", + " 14 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:436()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1909(set_minor_locator)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:25(_maybe_view_as_subclass)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:139(finalize)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:970(y1)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1138(start)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1265(_set_artist_props)\n", + " 41 0.000 0.000 0.000 0.000 {built-in method _imp.is_builtin}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:99(Disposal)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/utils.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1513(Ellipse)\n", + " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:746()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1176(PolyCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/texmanager.py:56(TexManager)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mathtext.py:48(__init__)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:918(__init__)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:886(get_snap)\n", + " 12 0.000 0.000 0.000 0.000 {method 'cumsum' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4344(ParseElementEnhance)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:52(_process_keys)\n", + " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1150(_generate_next_value_)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_configuration.py:12(ReportingConfiguration)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:924(reset_ticks)\n", + " 57 0.000 0.000 0.000 0.000 {built-in method fromkeys}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_references.py:15(ExternalPropertyFileReferences)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1046(get_hatch_linewidth)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:104(__init__)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1038(get_hatch_color)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:243(InvertedLogTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1371(_tzparser)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1027(get_hatch)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:849(get_dashes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:583(LogitTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1518(TensorStaticReason)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:381(InvertedSymmetricalLogTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4437(IndentedBlock)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:12(MutableLocalSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:58(RendererAgg)\n", + " 97 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5713()\n", + " 226 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:180(open_group)\n", + " 1 0.000 0.000 0.000 0.000 {method '_timer_start' of '_macosx.Timer' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:483(InvertedAsinhTransform)\n", + " 174 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:279(get_fillstyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm.py:66(cubehelix)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:597(get_url)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:672(get_offset)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1050(get_sketch_params)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:464(AsinhTransform)\n", + " 226 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:187(close_group)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:152(validate_axisbelow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:887(RegularPolygon)\n", + " 2 0.000 0.000 0.000 0.000 {built-in method posix.mkdir}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpGradientFile.py:1()\n", + " 49 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2333(_generateDefaultName)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1837(is_separable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/resume_execution.py:279(ResumeFunctionMetadata)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:328(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:27(ParseResults)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:609(LogisticTransform)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:367(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm_listed.py:2061()\n", + " 180 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:355()\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1455(is_dashed)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset18.py:1()\n", + " 104 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:165(keys)\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2795(__hash__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_device.py:1()\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:2181(wrap_logical_op_with_negation)\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:202(_checkLevel)\n", + " 3 0.000 0.000 0.000 0.000 {built-in method torch._C._get_tracing_state}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_run_automation_details.py:12(RunAutomationDetails)\n", + " 289 0.000 0.000 0.000 0.000 {method 'span' of 're.Match' objects}\n", + " 68 0.000 0.000 0.000 0.000 {method 'set_size' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:176(finalize)\n", + " 6 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(unravel_index)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact.py:17(Artifact)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1808(getattr_static)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/textpath.py:26(__init__)\n", + " 154 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1700(leave_whitespace)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:1()\n", + " 51 0.000 0.000 0.000 0.000 {built-in method builtins.locals}\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:326(get)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_exporter_states.py:1()\n", + " 67 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:99(deprecated)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/context.py:34(Diagnostic)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1641(sca)\n", + " 97 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1868(streamline)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:848(limit_range_for_scale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tritools.py:1()\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:154(_deprecated_property)\n", + " 29 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:622(name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trirefine.py:1()\n", + " 16 0.000 0.000 0.000 0.000 :815(__len__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:173(__init__)\n", + " 137 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1633()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5667()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/abc.py:131(TraversableResources)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:608(padded)\n", + " 80 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ndarray.py:82(create_method)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:105(_set_new_active_manager)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:146()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnx_proto_utils.py:1()\n", + " 40 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2998()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1564(__repr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor.py:17(ReportingDescriptor)\n", + " 53 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:182(_add_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow_location.py:19(ThreadFlowLocation)\n", + " 2 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(ravel_multi_index)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/_structures.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1602(RadioButtons)\n", + " 62 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2285(_register_style)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:980(p1)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:846(add_param_group)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:80(Text)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:1()\n", + " 105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:88(do_copy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3357(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1152(stop)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:75(nums)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1147(set_fontweight)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:160(get_subplotspec_list)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_region.py:16(Region)\n", + " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:17()\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:223(get_tick_padding)\n", + " 204 0.000 0.000 0.000 0.000 {method 'ljust' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:617(Final)\n", + " 177 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3035(return_annotation)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:316(_flatten_literal_params)\n", + " 16/4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:84(_convert)\n", + " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:43(update)\n", + " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4100()\n", + " 138 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:227()\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:389(extended_frame_gen)\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2119()\n", + " 131 0.000 0.000 0.000 0.000 {method 'items' of 'mappingproxy' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:496(Image)\n", + " 16 0.000 0.000 0.000 0.000 :798(__eq__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:80(_invalidates_cache)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:815(overload_by_arg_count)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:703(OpAssoc)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:85(_listify_validator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:141(GraphCompileReason)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:120(Blend)\n", + " 135 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3803()\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:832(_reduce_with_dtype)\n", + " 77 0.000 0.000 0.000 0.000 {method 'setter' of 'property' objects}\n", + " 105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:86(copy)\n", + " 152 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:668(result_type)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3488(__init__)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1967()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:117(Artist)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:815(Grouper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:17(_AutoStringNameEnum)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/isoparser.py:22(_takes_ascii)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2600(_ptp_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/context.py:272(DiagnosticContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_graph.py:17(Graph)\n", + " 44 0.000 0.000 0.000 0.000 :357(_get_module_path)\n", + " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:605(set_wrap)\n", + " 1 0.000 0.000 0.000 0.000 {method '_timer_stop' of '_macosx.Timer' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3459(__init__)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:458(_set_nothing)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triangulation.py:1()\n", + " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:440(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_notification.py:18(Notification)\n", + " 3 0.000 0.000 0.000 0.000 :397(abspath)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1154(set_axes_locator)\n", + " 18 0.000 0.000 0.000 0.000 :794(values)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_code_flow.py:16(CodeFlow)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1683(suppress)\n", + " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:246(get_canvas_width_height)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2309(_unpack_to_numpy)\n", + " 129 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:17(__getitem__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:32(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3262(__init__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:132(_validate_fromutc_inputs)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:2274(_isclose_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:204(Palette)\n", + " 83 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:313(quantized_args)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool.py:12(Tool)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1740(tick_values)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3228(add_axobserver)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:266(validate_color_or_inherit)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1073(Polygon)\n", + " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2328(_any_dispatcher)\n", + " 161 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:196(escape_re_range_char)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_address.py:12(Address)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:405(_generate_overlap_table)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:450(configure_artifact_log)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:231(Japanese)\n", + " 64 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:440(__repr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:15(GeoAxes)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:167(check_getitem)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:231(__post_init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:641(Path3DCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3757(And)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:262(x1)\n", + " 39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:877(__hash__)\n", + " 84 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:433()\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:108()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:568(parser)\n", + " 6 0.000 0.000 0.000 0.000 :150(dirname)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1470(__get_gettz)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:133(_unique_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageColor.py:1()\n", + " 27 0.000 0.000 0.000 0.000 {method 'translate' of 'bytearray' objects}\n", + " 57 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:202()\n", + " 114 0.000 0.000 0.000 0.000 {method 'decode' of 'bytes' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:111(GradModeVariable)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3452(register_extensions)\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2224(RewriteSymbolics)\n", + " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:807(get_width)\n", + " 137 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:476(_broadcast_arrays_dispatcher)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3047(get_size_inches)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:2150(identity)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:28()\n", + " 89 0.000 0.000 0.000 0.000 {method 'encode' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/actions.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1172(Wedge)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:852(register)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:154(_crc32)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1623(__getitem__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_web_response.py:15(WebResponse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_replacement.py:16(Replacement)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:83(Unset)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1373(_result)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:208(register_axis)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1778(_check_class)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:681(add_parse_action)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:707(scale_factory)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:800(singledispatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:2042(MultiCursor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_web_request.py:15(WebRequest)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:866(__contains__)\n", + " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:308(wrapper)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1497(__mro_entries__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:247()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1880(Circle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1689(patch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:406(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_graph_traversal.py:16(GraphTraversal)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:312(_logged_cached)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1321(__call__)\n", + " 100 0.000 0.000 0.000 0.000 {method '__exit__' of 'numpy.nditer' objects}\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3297(_generateDefaultName)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2278(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:693(add_condition)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:469(draw_if_interactive)\n", + " 156 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:772(postParse)\n", + " 112 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:429(is_transform_set)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/function_base.py:2269(__init__)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:116(clear)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:554()\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4972(_generateDefaultName)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:846()\n", + " 25 0.000 0.000 0.000 0.000 {built-in method unicodedata.name}\n", + " 112 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1371(get_mouseover)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1488(CirclePolygon)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:126(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:303(IFDRational)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm.py:158()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3561(_apply_env_variables)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2306(mpl_disconnect)\n", + " 77 0.000 0.000 0.000 0.000 :409(__subclasshook__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:861()\n", + " 134 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:93(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/_common.py:1()\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_guards.py:166(__hash__)\n", + " 65 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:244(__bool__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1230(exists)\n", + " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:264(__init__)\n", + " 16 0.000 0.000 0.000 0.000 :78(_check_methods)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:987(gcf)\n", + " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:135()\n", + " 28 0.000 0.000 0.000 0.000 {method 'fullmatch' of 're.Pattern' objects}\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:431()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:41(ExecutionRecorder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colorbar.py:195(Colorbar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:178(decide_compile_threads)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:35(_get_running_interactive_framework)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3441(register_extension)\n", + " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:106(__hash__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2190(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1560(transform_bbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_property_bag.py:10(PropertyBag)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:48(__new__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_util.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1032(enable_packrat)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:389(_bytes_to_codes)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:669(decorator)\n", + " 149 0.000 0.000 0.000 0.000 {method 'pop' of 'collections.deque' objects}\n", + " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:199(get_path)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1570()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:302(DataClassVariable)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:136(_commonType)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:96(__get__)\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:795(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:936(PathPatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/current_scope_id.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageMode.py:1()\n", + " 92 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1003(minpos)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:231(_ImageBase)\n", + " 94 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:1079(copyto)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_logical_location.py:12(LogicalLocation)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:181(_add_filter)\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:679(min)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:56(_make_str_method)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_translation_metadata.py:15(TranslationMetadata)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:120(CallbackRegistry)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/distributed_c10d.py:346(__getattribute__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_result_provenance.py:15(ResultProvenance)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:112(__diag__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3232()\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2269()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_location.py:19(Location)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_message.py:12(Message)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3528(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:799(null)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/twodim_base.py:162(eye)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1761(set_box_aspect)\n", + " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:142()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2142(_set_artist_props)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/table.py:239(Table)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:350()\n", + " 84 0.000 0.000 0.000 0.000 {method 'update' of 'set' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/serialization.py:1()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_compile.py:8(_disable_dynamo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PaletteFile.py:1()\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:386()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_exception.py:16(Exception)\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:404()\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2736(axes)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:1878(isscalar)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_binary.py:101(o32be)\n", + " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:77(_atleast_2d_dispatcher)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:568(__init__)\n", + " 40 0.000 0.000 0.000 0.000 {method 'startswith' of 'bytes' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:322(condition_as_parse_action)\n", + " 2 0.000 0.000 0.000 0.000 :117(splitext)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:2170(decorator)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:859(set_bounds)\n", + " 59 0.000 0.000 0.000 0.000 {method 'acquire' of '_thread.RLock' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/random.py:70(_seed_custom_device)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1697(set_adjustable)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:45(_compat_get_offset)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:212(_validate_pathlike)\n", + " 105 0.000 0.000 0.000 0.000 {method 'removeprefix' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:45(Tag)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:188(UserDefinedObjectVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:982(FontManager)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:289(update)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpPaletteFile.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:140(__init__)\n", + " 90 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:842(_hash_set_none)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:421(validate_whiskers)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:687()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:677(Bbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:749(StixFonts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_physical_location.py:17(PhysicalLocation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/__init__.py:1()\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:272(y1)\n", + " 57 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:265()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5044(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:26(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:23(ExecutionRecord)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2676(notify_axes_change)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:100(get_active)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1924(_caller)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_location_relationship.py:12(LocationRelationship)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:171(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:150(TorchFunctionDisableVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_stack_frame.py:12(StackFrame)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_special_locations.py:15(SpecialLocations)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/quiver.py:235(QuiverKey)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:214(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:1872(AppendingTiffWriter)\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:325(walk_stack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_suppression.py:12(Suppression)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:257()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:417(_getencoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2324(new_timer)\n", + " 48 0.000 0.000 0.000 0.000 :315(__subclasshook__)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3392(register_open)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1693(_process_projection_requirements)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:165(simplefilter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_reference.py:15(ReportingDescriptorReference)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/testing.py:124(TestParseResultsAsserts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1302(RegularPolyCollection)\n", + " 41 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:262(haskeys)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mathtext.py:37(MathTextParser)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:77()\n", + " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:805(get_color)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageSequence.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool_component_reference.py:12(ToolComponentReference)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_node.py:17(Node)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:259(disconnect)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:41(tzutc)\n", + " 64 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3858()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1794(_shadowed_dict)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:667(with_name)\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:368(_intersect1d_dispatcher)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3216(update)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/nn_module.py:66(NNModuleVariable)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:591(__iter__)\n", + " 38 0.000 0.000 0.000 0.000 :260(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/nn_module.py:634(UnspecializedNNModuleVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:624(SkipFilesVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:256(_validate_toolbar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_edge.py:12(Edge)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_sarif_log.py:16(SarifLog)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:1281(TorchPatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_getlimits.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:906(AnchoredOffsetbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1909(TriMesh)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_attachment.py:18(Attachment)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:27(_apply)\n", + " 9 0.000 0.000 0.000 0.000 {method 'clear' of 'collections.OrderedDict' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_relationship.py:16(ReportingDescriptorRelationship)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:510(update)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:345(get_path)\n", + " 47 0.000 0.000 0.000 0.000 {method 'index' of 'list' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_edge_traversal.py:12(EdgeTraversal)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:383(get_snap_threshold)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:194(find_spec)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:445()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1768(EllipseCollection)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2259(_make_getset_interval)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3055()\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:761(_isin_dispatcher)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2796()\n", + " 3 0.000 0.000 0.000 0.000 :389(normpath)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:364(get_alt_path)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:152(__contains__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3125(clear)\n", + " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:199(no_escape_re_range_char)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:594(__len__)\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:519(_in1d_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:149(_tzinfo)\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:673()\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4753(_generateDefaultName)\n", + " 68 0.000 0.000 0.000 0.000 {method 'get_descent' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1229(__hash__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1553(unique)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:62(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:434(BakomaFonts)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:156(update)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:433(__init__)\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:73(_zeros_like_dispatcher)\n", + " 45 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:452(_parse_letter_version)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:249(validate_backend)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_multiformat_message_string.py:12(MultiformatMessageString)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:286(_validate_color_or_linecolor)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:896(get_drawstyle)\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:390()\n", + " 39 0.000 0.000 0.000 0.000 {method 'get_width_height' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 5 0.000 0.000 0.000 0.000 {built-in method _warnings.warn}\n", + " 54 0.000 0.000 0.000 0.000 {method '__exit__' of '_thread.RLock' objects}\n", + " 59 0.000 0.000 0.000 0.000 {method 'release' of '_thread.RLock' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:426(_reduce_with_dtype)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:164(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:831(PsfontsMap)\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:84(empty_like)\n", + " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4088()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:637(colspan)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/__init__.py:21(__deprecated_private_func)\n", + " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:834(get_alpha)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5509(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_reference.py:15(ExternalPropertyFileReference)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:2126(QuadMesh)\n", + " 12 0.000 0.000 0.000 0.000 {built-in method zlib.crc32}\n", + " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4087()\n", + " 4 0.000 0.000 0.000 0.000 :283(__subclasshook__)\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:221()\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2530(overload)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:44(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:501(CompilationMetrics)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:31(unicode_set)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:86(_update_methods)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:609(get_markevery)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:183(Line3D)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:303(get_marker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:132(tzoffset)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:174(_make_type_validator)\n", + " 49 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1663()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:85(register_artifact_log)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:9(Gcf)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:631(rowspan)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:239(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:328(add_text)\n", + " 49 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:715()\n", + " 48 0.000 0.000 0.000 0.000 {method 'issuperset' of 'set' objects}\n", + " 66 0.000 0.000 0.000 0.000 {built-in method _warnings._filters_mutated}\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:296(_apply_params)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:990(intervaly)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:98(prepare_class)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1695(safe_isfinite)\n", + " 1 0.000 0.000 0.000 0.000 {method 'flush' of '_io.BufferedRandom' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_configuration_override.py:16(ConfigurationOverride)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:19(ParseBaseException)\n", + " 56 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:327(_select_from)\n", + " 42 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:177(__init__)\n", + " 22 0.000 0.000 0.000 0.000 :361(_is_dir)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_conversion.py:17(Conversion)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2498(get_minpos)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:76(Text3D)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:543(_new)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2634(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1223(fields)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4578(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3418(draw_if_interactive)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1590(get_major_locator)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4370(recurse)\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:385()\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:295(checkgroupname)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:311(triton)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageChops.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:88(_finalize_rasterization)\n", + " 9 0.000 0.000 0.000 0.000 :1103(_sanity_check)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/api.py:23(FFI)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1116(__init__)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:198()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_stack.py:16(Stack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_globals.py:15(_InternalGlobals)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:454(__contains__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:804(PolarAxes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:233()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:226()\n", + " 29 0.000 0.000 0.000 0.000 {method 'get_bitmap_offset' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1271(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:180(DeterministicAlgorithmsVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:56(__init__)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:565()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1189(args)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3532(parseImpl)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:12(__config_flags)\n", + " 58 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:672(flipy)\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:247(__iter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:961(_CollectionWithSizes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/abc.py:14(ResourceReader)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2239(get_label_position)\n", + " 20 0.000 0.000 0.000 0.000 :812(__init__)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5721(token_map)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:440(__getitem__)\n", + " 50 0.000 0.000 0.000 0.000 {method 'insert' of 'list' objects}\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3058()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_secondary_axes.py:11(SecondaryAxis)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/decoder.py:284(__init__)\n", + " 1 0.000 0.000 0.000 0.000 :773(getenv)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:264(__init__)\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:158()\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:372()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:522(_push_cm_exit)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method posix.cpu_count}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_change.py:16(ArtifactChange)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:977(clear)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:115()\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:794(get_window_extent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:102(PrimitiveType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:100(__init__)\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4099()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:409(iscoroutinefunction)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:493(Module_six_moves_urllib)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:633(__init__)\n", + " 1 0.000 0.000 0.000 0.000 {method 'requires_grad_' of 'torch._C._TensorBase' objects}\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/deprecated.py:20(get_warning)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:131(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/codegen.py:43(PyCodegen)\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:14(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:1033(_LuatexKpsewhich)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2289(XAxis)\n", + " 35 0.000 0.000 0.000 0.000 {built-in method sys._getframe}\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2592(_check_layout_engines_compat)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_fix.py:16(Fix)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:74(Stats)\n", + " 1 0.000 0.000 0.000 0.000 :422(spec_from_loader)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1358(decorate_callable)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:229(_ishidden)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:62(__init__)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method PIL._imaging.zip_encoder}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/BmpImagePlugin.py:62(BmpImageFile)\n", + " 29 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:820(get_antialiased)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1925(set_pickradius)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:76(_convert_signed_num)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:435(locally_modified_subplot_params)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:292(p1)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:73(ToolBase)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:94(join_parsed_parts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:44(LoggingTensor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:128(OrtOperatorSupport)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:234(_has_alpha_channel)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_deprecate.py:1()\n", + " 23 0.000 0.000 0.000 0.000 {method 'partition' of 'str' objects}\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:222(has_magic)\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2821()\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:72(_apply_params)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:439(from_list)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1216(Normalize)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3379(_generateDefaultName)\n", + " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4098()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:52(ConfigModule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/mutation_guard.py:56(GenerationTracker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3210(RectangleSelector)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:1()\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:797(__iter__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:498(set_useLocale)\n", + " 1 0.000 0.000 0.000 0.000 :933(clear)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:695(__hash__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:221(validate_fonttype)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:370(__init__)\n", + " 26 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2016()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2741(get_minpos)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:77(__call__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1276(Transform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2527(YAxis)\n", + " 26 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:388(_delegate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:12(ModuleRecord)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:181()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:33()\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:70(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/JpegPresets.py:1()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:209()\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:351()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4895(_generateDefaultName)\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:188(_dispatch)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:548(from_dict)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1545(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triangulation.py:8(Triangulation)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4773(stopOn)\n", + " 2 0.000 0.000 0.000 0.000 :121(_splitext)\n", + " 9 0.000 0.000 0.000 0.000 {built-in method _struct.calcsize}\n", + " 2 0.000 0.000 0.000 0.000 :262(__subclasshook__)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:238(__contains__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tripcolor.py:1()\n", + " 88 0.000 0.000 0.000 0.000 {built-in method builtins.globals}\n", + " 23 0.000 0.000 0.000 0.000 {method 'rsplit' of 'str' objects}\n", + " 43 0.000 0.000 0.000 0.000 {method 'pop' of 'set' objects}\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1787()\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:170(change_key)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:375(ScalarFormatter)\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2265()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:21(FigureCanvasMac)\n", + " 4 0.000 0.000 0.000 0.000 :362(__subclasshook__)\n", + " 25 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:669(_block_list_in_opset)\n", + " 39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1873(recurse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3045(QuotedString)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:732(XAxis)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/relativedelta.py:13()\n", + " 46 0.000 0.000 0.000 0.000 {method 'reverse' of 'list' objects}\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:310(_original_line)\n", + " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:171(__set_name__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:841(_is_union_type)\n", + " 61 0.000 0.000 0.000 0.000 {built-in method _sre.unicode_iscased}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:181(dynamo_timed_inner)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:404(trace)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3511(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:2177(_SelectorWidget)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1165(get_axes_locator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:531(SubplotSpec)\n", + " 16 0.000 0.000 0.000 0.000 {built-in method _struct.pack}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:665(Colormap)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:283(get_children)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1740()\n", + " 57 0.000 0.000 0.000 0.000 {built-in method _sre.unicode_tolower}\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3627(recurse)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1263(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:241(parserinfo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:89(__compat__)\n", + " 4 0.000 0.000 0.000 0.000 :60(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:270(DiagnosticOptions)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:587(ExportOutput)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:960(ImageFileDirectory_v1)\n", + " 3 0.000 0.000 0.000 0.000 {built-in method posix._path_normpath}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/registration.py:35(OpName)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1153(LockableBbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4866(ZeroOrMore)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:118(set_active)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:532(FontProperties)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2149(SubFigure)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:223()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1565(EventCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:210(_process_plot_var_args)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:545(locator)\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:370()\n", + " 35 0.000 0.000 0.000 0.000 {method 'bit_length' of 'int' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/logging.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives.py:304(AsyncCollectiveTensor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:97(ColorSequenceRegistry)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:190(set_axis)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:86(as_list)\n", + " 1 0.000 0.000 0.000 0.000 :1276(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:283(__len__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:72(_convert_num)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:103(OnnxRegistry)\n", + " 8 0.000 0.000 0.000 0.000 :1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:848(AxesImage)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:104(Cycler)\n", + " 41 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/_distutils_hack/__init__.py:96()\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:576(_validate_greaterequal0_lessequal1)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:120(__init__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:112(_makearray)\n", + " 34 0.000 0.000 0.000 0.000 {method 'groupdict' of 're.Match' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:227(RuleCollection)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3418(register_save)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1972(_MeshData)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:190(set)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/relativedelta.py:18(relativedelta)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:391(_has_code_flag)\n", + " 4 0.000 0.000 0.000 0.000 {built-in method numpy.core._multiarray_umath.normalize_axis_index}\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:835(load)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:181()\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1273(append)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:609(num2)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:131(_validate_date)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:551(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triplot.py:1()\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:33(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1378(LineCollection)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:97(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1310(__init__)\n", + " 1 0.000 0.000 0.000 0.000 :1311(__iter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:809(Replacer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5117(Forward)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:110(get_projection_class)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:119(_resolve)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:236(create_module)\n", + " 10 0.000 0.000 0.000 0.000 :1220(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3304(parseImpl)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset8.py:70(_apply)\n", + " 36 0.000 0.000 0.000 0.000 {method 'end' of 're.Match' objects}\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:556(formatter)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1668(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method time.localtime}\n", + " 5 0.000 0.000 0.000 0.000 :818(fsdecode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:438(HFPretrainedConfigVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:740(YAxis)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_VF.py:26(__getattr__)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2883(_namedtuple_mro_entries)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:74(__lt__)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:568(_validate_greaterthan_minushalf)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImagePalette.py:25(ImagePalette)\n", + " 42 0.000 0.000 0.000 0.000 {method 'upper' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:517(CleanupHook)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/constant.py:29(ConstantVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_binary.py:1()\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:85(_import_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:844(Poly3DCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:390(ScalarMappable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2354(Keyword)\n", + " 7 0.000 0.000 0.000 0.000 {method 'seek' of '_io.BufferedReader' objects}\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:702(get_scale_names)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:124()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2189(runtime_checkable)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:147(forbid_in_graph)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:125(Element)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/function_base.py:18(_linspace_dispatcher)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1603(get_aspect)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1305(EngFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:366(backend_mod)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:100(is_off_by_default)\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3361()\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:74(get_geometry)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._log_api_usage_once}\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1744(_fix_ipython_backend2gui)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:442()\n", + " 37 0.000 0.000 0.000 0.000 {method 'clear' of 'dict' objects}\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3407(register_mime)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1794()\n", + " 2 0.000 0.000 0.000 0.000 :1293(_get_parent_path)\n", + " 6 0.000 0.000 0.000 0.000 :760(decode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4983(SkipTo)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1766(_static_getmro)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/__init__.py:7(is_available)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:64(Rule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:815(LogFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_afm.py:358(AFM)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/jit_utils.py:23(GraphContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:32(ToolManager)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1729()\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:535(__init__)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:227()\n", + " 2 0.000 0.000 0.000 0.000 :786(keys)\n", + " 2 0.000 0.000 0.000 0.000 {method 'manual_seed' of 'torch._C.Generator' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1884(Affine2D)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:765(_validate_legend_loc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1418(_rrulestr)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._get_schema}\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_deprecation.py:8(deprecated)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:512(__init__)\n", + " 1 0.000 0.000 0.000 0.000 {method '_set_window_mode' of '_macosx.FigureManager' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:21()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1512(CenteredNorm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3321(White)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2452(_unit_change_handler)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:374(validate_fontweight)\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:617(get_gridspec)\n", + " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:305(_export)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:418(__getattr__)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1798(get_anchor)\n", + " 1 0.000 0.000 0.000 0.000 :1037(_resolve_name)\n", + " 1 0.000 0.000 0.000 0.000 :100(split)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:56(TensorVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1077(TransformedBbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:103(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:748(ZAxis)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5456(postParse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1494(__or__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:81(ExportDiagnosticEngine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/__init__.py:106(__version__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2613(Word)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3380(_Backend)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/stackplot.py:1()\n", + " 3 0.000 0.000 0.000 0.000 :381(__subclasshook__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1787(_is_type)\n", + " 1 0.000 0.000 0.000 0.000 :39(isdir)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:31(iglob)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:1950(InstructionTranslator)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:53(__get__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:360(PngStream)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4066(MatchFirst)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2579(FigureManagerBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:32()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:59(ColormapRegistry)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:231(_normalize)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:527(_push_exit_callback)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:42(_MissingCustomSymbolicFunction)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1685(TransformWrapper)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method PIL._imaging.map_buffer}\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1689()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:267(tzrangebase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/collections/__init__.py:585(__init__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_guards.py:190(source)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_globals.py:22(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:2278(LightSource)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:966(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1255(__mro_entries__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:208(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:26(ConstDictVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:958(LinearSegmentedColormap)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2204(_Style)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:523(Ticker)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py:90(RLock)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:228()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1106(__init__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1720(getEffectiveLevel)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:262(cpp)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1267(__init__)\n", + " 32 0.000 0.000 0.000 0.000 {built-in method _operator.index}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:182()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:183()\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:434()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:76()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:386(tzfile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:67(_raise_malformed_node)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:117(isComplexType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:279(ConstPointerType)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:238()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:26(StrCategoryConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:286(CubicTriInterpolator)\n", + " 3 0.000 0.000 0.000 0.000 {method 'tolist' of 'memoryview' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/mutation_guard.py:10(MutationTracker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:134(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 {method 'setimage' of 'ImagingEncoder' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:114(OrphanPath)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:75(register)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:674(get_topmost_subplotspec)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:491(_parse_local_version)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:9(__init__)\n", + " 14 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/_common.py:9(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:172(Stack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:109(OptimizedModule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/textpath.py:20(TextToPath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_layoutgrid.py:31(LayoutGrid)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:108(ConversionInterface)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mlab.py:770(GaussianKDE)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:138()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1427(exec_body_callback)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2573()\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:243(generic_jump)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:645(RcParams)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3597(Exif)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4522(AtLineStart)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:62(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:595(DrawingArea)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:524(__init__)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:224(__set_name__)\n", + " 12 0.000 0.000 0.000 0.000 :7(abstractmethod)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1238()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:579(_update_clip_properties)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1755(have_units)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:198()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2875(_check_size)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/shlex.py:19(shlex)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:725(_NoopSaveInputs)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:169(is_fbcode)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:406(_validate_mathtext_fallback)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:477(QName)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GifImagePlugin.py:63(GifImageFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1193(kwargs)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:292()\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:307(__len__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:787(parents)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1962(MaxNLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:754()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:726(get_figure)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:548(ColorConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:125()\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:518()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:858(validate_hist_bins)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:72(colorbar_gridspec)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:460(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/comptime.py:112(ComptimeContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/lock.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1167(interval)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:498(_ThetaShift)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:577(KeyedJaggedTensorVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:149(FigureManagerMac)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:495(popitem)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2704(LogitLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2592(AsinhLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:73(_AxesStack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:205(load_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:394(_ymd)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:190()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:5(Container)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2056(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1023(get_fignums)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:244(DType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:420(major)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:164(_resolve)\n", + " 23 0.000 0.000 0.000 0.000 {built-in method _stat.S_ISLNK}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:1132(SubgraphTracer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/_structures.py:6(InfinityType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2445(CompositeAffine2D)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3225(ToolContainerBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2369(Ellipse)\n", + " 1 0.000 0.000 0.000 0.000 :1297(_recalculate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:570(Stack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:1()\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:790(get_scale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tritools.py:11(TriAnalyzer)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:115(is_artifact_enabled)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/version.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1767(C14NWriterTarget)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:723(PngImageFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PaletteFile.py:19(PaletteFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:1059(TiffImageFile)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:38(_ignore_error)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config.py:264(is_fbcode)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:107(get_linalg_error_extobj)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:218(TensorPropertySource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:106()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:100(add)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:186(_assert_stacked_square)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:366()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:71(DefaultDeviceType)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:55()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:238(HandlerLine2DCompound)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_guards.py:186(name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:163(FakeRootModule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:494(GetAttrVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:522(Spines)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/backends/registry.py:9(CompiledFn)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:560(CollectiveFunctionRewriteVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1458(PercentFormatter)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1465()\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:241(__len__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:319(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1402(_fixupChildren)\n", + " 1 0.000 0.000 0.000 0.000 :1081(__subclasshook__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:41(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:308(add_module_init_func)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:795(Config)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1895(device_pixel_ratio)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:201(tzlocal)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:219(is_package)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:748(_WedgeBbox)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2833()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:347(__exit__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:317()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:666(SymNodeVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1141(OffsetImage)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/test_operators.py:13(Realize)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1181(single_shot)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1751(ParserState)\n", + " 8 0.000 0.000 0.000 0.000 :1224(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/torch.py:138(TorchVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1109(LogitFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/__init__.py:99(version_info)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:706(isDefault_majloc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:1018(TensorSubclassVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_version.py:1()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:452(set_useOffset)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/_weakrefset.py:173(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1602(_get_target)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:175(WrapperBackend)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:65(_BaseVersion)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:254(iTXt)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:126()\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3380()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:1481(QuadContourSet)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:896(ToolHelpBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1458(DraggableBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:421(buffer_rgba)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:251(CommonListMethodsVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:198(Formatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:83(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:65(Text)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:239()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:707(TextArea)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2519(_cumsum_dispatcher)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:180(_assert_stacked_2d)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:121(BlockStackEntry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:534(Patch3DCollection)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:225(_clear)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/external_utils.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:220(_TorchDynamoContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/_structures.py:35(NegativeInfinityType)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1014(minposx)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1444(_AnnotationBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1167(_tzicalvtz)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1475(GettzFunc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:361(HandlerStepPatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:140(PolarAffine)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:77(resolve_bases)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:884(FXGraphExtractor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:273(ExportOptions)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3911(Or)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:561(_from_subplot_args)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:714(isDefault_majfmt)\n", + " 8 0.000 0.000 0.000 0.000 {built-in method math.isfinite}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_deprecation.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:45(InputAdapter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1174(CompileProfiler)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:347(ListVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:94(rrulebase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4591(PrecededBy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:124(Circles)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1748(CircleCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:158(ToolToggleBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:77(destroy_all)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1388(BboxImage)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3410(set_axis_on)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:186(_get_module)\n", + " 20 0.000 0.000 0.000 0.000 {method '__init_subclass__' of 'object' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:43(TorchScriptOnnxExportDiagnostic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:165(GuardCodeList)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:2434(InliningGeneratorInstructionTranslator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1417(TwoSlopeNorm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:409(SymmetricalLogScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2159(_BlendedMixin)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4907(Opt)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1467(AxLine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1192(RRuleLocator)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:201(_is_param_expr)\n", + " 7 0.000 0.000 0.000 0.000 {method 'index' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:265(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:391(OptimizeContext)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3429(register_save_all)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:85(ImageFile)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:78(limit_range_for_scale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:709(ToolZoom)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:66(Widget)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1410(Hrule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:27(LayoutEngine)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2904(set_canvas)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1778(DateConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:232(LinearTriInterpolator)\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2744(annotation)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:855(_set_autoscale_on)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:130(_realType)\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:179(__repr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:971(UnspecializedPythonVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:133(DeviceMeshVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:525(ElementTree)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1752(LinearLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5554(Suppress)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3136(_Base)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2678(get_layout_engine)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/__init__.py:23(_running_with_deploy)\n", + " 6 0.000 0.000 0.000 0.000 {method 'join' of 'bytes' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_constants.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:135(Location)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:764(_get_backend_or_none)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:162(ChunkStream)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:499(AsinhScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:221(Fonts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:540(UnicodeFonts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:824(AuxTransformBox)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2269(_generateDefaultName)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1001()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:543(validate_bbox)\n", + " 3 0.000 0.000 0.000 0.000 {method 'index' of 'tuple' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:58(FunctionProfile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:101(UserFunctionVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:727(TensorWithTFOverrideVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:494(MapHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:677(_Stack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5373(Combine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1368(StarPolygonCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:2239(PolyQuadMesh)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3207(_Curve)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1188(PcolorImage)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:402(ThetaAxis)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:19(ConfigModuleInstance)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:63(DynamoGuardHook)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:688(clear)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2863(Char)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/textpath.py:293(TextPath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:169(_SixMetaPathImporter)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/__init__.py:43(private_class)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2372(get_origin)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/__init__.py:68(queue_seed_all)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:386(DequeVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1112(CheckpointHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:27(classproperty)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2525(BboxTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2499(CaselessKeyword)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:457(ToolViewsPositions)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:318(GridSpec)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/data/datapipes/_typing.py:221(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:367(ExactWeakKeyDictionary)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:39(UserDefinedClassVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:157(ProcessGroupVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:83()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:12(qualify)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4177(Each)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:200(install_repl_displayhook)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:48(SpecPath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/optimizer.py:25(OptimizerVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2663(ScaledTranslation)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:56(fget)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:127()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:68(_is_instance_mock)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:324(ResolvedExportOptions)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset11.py:89(_apply_params)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:191(CheckpointFunction)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:108(CheckpointWrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:246(DefaultDictVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:221(DisabledSavedTensorsHooksVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:419(AutogradFunctionContextVariable)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:557(validate_sketch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:345(StructOrUnion)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4714(NotAny)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1602(VertexSelector)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1325(FigureImage)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:94(bubble)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:730(isDefault_minfmt)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:259(DomainMap)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trirefine.py:47(UniformTriRefiner)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:899(_is_typevar_like)\n", + " 2 0.000 0.000 0.000 0.000 {built-in method time.time}\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:793(_reduce_op_symbolic)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:382(break_graph_if_unsupported)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:704(FlattenInputOutputSignature)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:1608(SourcelessBuilder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2175(_backend_module_name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4501(AtStringStart)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:329(TruetypeFonts)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:545(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:122(set_height_ratios)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:80(_add_doc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:78(add)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:36(SortKey)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:456(TupleVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:22(ContextWrappingVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:82(PlacementVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:233(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2568(BboxTransformTo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2627(BboxTransformFrom)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2220(_PendingSkip)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4862(_generateDefaultName)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:903(FontConstantsBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:405(XTick)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1112(_iterinfo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1215(_Sparse_Matrix_coo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:699(RadialAxis)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:412(Patch3D)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/fx/_compatibility.py:7(compatibility)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset8.py:76(_interpolate)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:2059(_interpolate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:17(InstructionExnTabEntry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:174(StackSize)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:315(GetItemSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/operators.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:49(PlacementClassVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:261(LogScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2689(AffineDeltaTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3241(CharsNotIn)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1373(AsteriskPolygonCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:830(ToolPan)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2044()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:613(num2)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:722(isDefault_minloc)\n", + " 3 0.000 0.000 0.000 0.000 {built-in method sys.exc_info}\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset8.py:67(_apply_params)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:62(_MissingStandardSymbolicFunction)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:149(guard_source)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:762(SetElement)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:432(validate_ps_distiller)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:358(Parser)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:9(__init__)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:851()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:434(__len__)\n", + " 1 0.000 0.000 0.000 0.000 {method 'title' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:98(OutputAdapter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/convert_frame.py:75(Tracker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:364(NestedUserFunctionVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:359(CUDAStreamContextVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:12(DistributedVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1384(TreeBuilder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:453(_E)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:25(BaseTypeByIdentity)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:159(_DummyAxis)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1093(set_label)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:642(ZoomPanBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:527(PaddedBox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:462(YTick)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:985(_DOF_estimator)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:886(__repr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:304(__init__)\n", + " 3 0.000 0.000 0.000 0.000 {method 'cast' of 'memoryview' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:264(UserMethodVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:272(AutocastModeVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives_impl.py:30(_WaitRegistration)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1506(XMLParser)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_util.py:5(is_path)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colorbar.py:146(_ColorbarAxesLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1308(Vlist)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:69(ProjectionRegistry)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1662(_value_and_type_iter)\n", + " 5 0.000 0.000 0.000 0.000 {method 'discard' of 'set' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:274(_FxNodeInsertTypePromotion)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:489(OrtExecutionInfoForAllGraphModules)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:14(generic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:61(_ColorMapping)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2438(SymmetricalLogLocator)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1025(minposy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1008(PathCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1068(Char)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:132(TightLayoutEngine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:83(ChildPath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1116(DateLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:15(TriInterpolator)\n", + " 2 0.000 0.000 0.000 0.000 :1283(_find_parent_path_names)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:212(InspectSignatureVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2055(_OrderedSet)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:88(_generate_etree_functions)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1121(ListedColormap)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4555(FollowedBy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:211(ConstrainedLayoutEngine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1399(ArtistList)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:13(tzname_in_python2)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:92(_OperatorSupportedInNewerOpsetVersion)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:126(_FxGraphToOnnx)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ndarray.py:47(Flags)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:93(LoggingTensorReentrant)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:26(SuperVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2719(TransformedPath)\n", + " 3 0.000 0.000 0.000 0.000 {method 'dim' of 'torch._C._TensorBase' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:163(Button)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:85(get_projection_names)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:724(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1795(is_saving)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:71()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/convert_frame.py:76(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:146(_FxNodeToOnnx)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:166(_FxPass)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:234(_OpLevelDebugging)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:294(_FindOperatorOverloadsInOnnxRegistry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:80(LocalSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_device.py:58(DeviceContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:113(GeneratorStateSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:473(ConstantSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:204(RangeVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/codegen.py:33(GraphOutputEntry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1840(SymLogNorm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1878(AsinhNorm)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3473(register_decoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:25(DTDForbidden)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:298(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:11(_ParseResultsWithOffset)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:245(ToolSetCursor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:573(DviFont)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:138(StrCategoryFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:219(_resultbase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:46(HandlerBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trifinder.py:27(TrapezoidMapTriFinder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:223(_GeoTransform)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:277(option_image_nocomposite)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/JpegImagePlugin.py:346(JpegImageFile)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._mps_is_in_bad_fork}\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:479(__repr__)\n", + " 6 0.000 0.000 0.000 0.000 {built-in method _stat.S_ISDIR}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:206(_UnsupportedFxNodeAnalysis)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:254(_FindOpschemaMatchedSymbolicFunction)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:60(MutableLocal)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:80(BaseUserFunctionVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:684(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1910(PowerNorm)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:539(size)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1849(PatchCollection)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:82(adjust_compatible)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:781(get_subplotspec)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:258(_AxisWrapper)\n", + " 4 0.000 0.000 0.000 0.000 :2(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:207(Graph)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:186(_NoSymbolicFunctionForCallFunction)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:557(LargeProtobufExportOutputSerializer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:264(DuplicateWarningChecker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:413(ODictGetItemSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:869(NumpyNdarrayVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:576(NamedTupleVariable)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:611(_validate_minor_tick_ndivs)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:160(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:29(ScaleBase)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3476(Show)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:664(Vf)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:266(SliderBase)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:647()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/_common.py:6(weekday)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:874(tzrange)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1866(_SwitchableDateConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:449(RadialLocator)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method posix.register_at_fork}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/registration.py:18(ONNXFunction)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:347(ExceptionTableEntry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1295()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:51(ValidateInStrings)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1568(Locator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/testing.py:20(reset_pyparsing_context)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:97(RasterParse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:28(LockDraw)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:328(_ttinfo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1707(MicrosecondLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:13(__call__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:305(rrule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:372(Line3DCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PpmImagePlugin.py:149(PpmPlainDecoder)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1319(disable)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:1029(unravel_index)\n", + " 4 0.000 0.000 0.000 0.000 {built-in method sys.audit}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:1004(FakeItemVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:126(ComptimeVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:809(NumpyVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:92(_StrongRef)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:285(add)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:123(FuncTransform)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1108(get_zorder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1370(OffsetFrom)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:75(VectorParse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:121(SubplotParams)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:129(_LazyModule)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:668(_register_loader)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:427(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:49(PatchedPropertyBag)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:369(FlattenInputWithTreeSpecValidationStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:914(Exporter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:202(SubConfigProxy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1711(numpy_method_wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:128(ReadsWrites)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:800(ExprCounter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:25(GuardFail)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:95(RandomValueSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:130(GlobalSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:173(AttrSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:390(SuperSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/constant.py:164(EnumVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:667(ListIteratorVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:25(MutableSideEffects)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:103(__eq__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:387(validate_fontstretch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/ElementTree.py:79(DefusedXMLParser)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:490(EnumType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:673(PyDecoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:722(PyEncoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:159(FuncScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2524(CloseMatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3543(WordStart)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5363(TokenConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colorbar.py:123(_ColorbarSpine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1186(add_callback)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1409(MouseEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:420(AxisScaleBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:179(FontMetrics)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:672(DejaVuFonts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1496(Kern)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:31()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1567(DraggableOffsetBox)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4002(set_navigate_mode)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:880(add_metaclass)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1315(_genitem)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:322(Grid)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:462(PathPatch3D)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:264(buffer_rgba)\n", + " 3 0.000 0.000 0.000 0.000 {method 'copy' of 'mappingproxy' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:336(NullContextVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1272(XMLPullParser)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2790(TransformedPatchPath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2583(Sawtooth)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1206(Hlist)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:168(UnitData)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:656(ConciseDateFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1268(AutoDateLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:430(HandlerRegularPolyCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:118(NavigationToolbar2Mac)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:232(_BackendMac)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:845(_is_valid_dispatch_type)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:442(WithExitFunctionVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffTags.py:23(TagInfo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:601(PyCodec)\n", + " 2 0.000 0.000 0.000 0.000 {method 'pixel_access' of 'ImagingCore' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2299(Literal)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5430(Group)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:20(_generate_next_value_)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1632(_draw)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1246(Event)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:211(FontInfo)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:81(get_projection_class)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:34(_axis_method_wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend.py:54(DraggableLegend)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:995(rrulewrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tricontour.py:8(TriContourSet)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:679(_register_writer)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:680(decorator)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3986(set_navigate)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/function_base.py:1316(_diff_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 {method 'squeeze' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:189(ThreadFlowLocation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1730(numpy_operator_wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1834(_Anchors)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:75(Unsupported)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:257(NegateSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:367(TypeSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:626(SliceVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:421(CUDAStreamVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:56(ExternalReferenceForbidden)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:276(PngInfo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:628(LogitScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:125(LRUMemo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:33(get_fig_manager)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:38(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:487(SpinesProxy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3696(EllipseSelector)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:135(DecimalConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1253(tzical)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:156(GlobalWeakRefSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:250(AutogradFunctionVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:134(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1915(_Edge_integer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3405(GoToColumn)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:360(ToolQuit)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:37()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1098(AnchoredText)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:476(GridSpecFromSubplotSpec)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:310(ThetaTick)\n", + " 3 0.000 0.000 0.000 0.000 {method '__array_prepare__' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:343(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/patcher.py:19(ONNXTorchPatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:72(int8)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:182(KeyErrorMsg)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:766(TypingVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:915(GrouperView)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:76(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:333(silent_list)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1991(BoundaryNorm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1105(_ListDataStream)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:2119(NoNorm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:310(FuncScaleLog)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpPaletteFile.py:22(GimpPaletteFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1687(FixedLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1833(MultipleLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:282(p0)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2472(CaselessLiteral)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/actions.py:7(OnlyOnce)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:304(ToolCursorPosition)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3221(set_history_buttons)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:120(Output)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1139(Accent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1010(Node)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1162(List)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1428(_GlueSpec)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:106(PlaceHolderLayoutEngine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:110(AxesWidget)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:118(StrCategoryLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:108(MovedModule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:626(DateFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:521(HandlerErrorbar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1156(_DOF_estimator_min_E)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:628(HandlerStem)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:281(ThetaLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:548(RadialTick)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PpmImagePlugin.py:53(PpmImageFile)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:274(release)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:163(StackFrame)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_exporter_states.py:8(ExportTypes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:411(_reduce_op_symbolic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:67(GenericContextWrappingVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:6(Substitution)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:294(ArrayType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:328(StubImageFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2261(Token)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2397(LArrow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3762(Wedge)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1033(Box)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:420(PackerBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1071(_DOF_estimator_geom)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:380(StreamMask)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:38(UnsupportedOperatorError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:543(ProtobufExportOutputSerializer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:169(FixedPointBox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:23(MutableLocalBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:18(DummyModule)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:163(validate_dpi)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:64(_ArtistPropertiesSubstitution)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageMode.py:22(ModeDescriptor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:224(RawFunctionType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:328(StructOrUnionOrEnum)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageSequence.py:19(Iterator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:355(StrMethodFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:270(FixedFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2872(AutoMinorLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:332(RubberbandBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:437(ToolYScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:600(ToolHome)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:609(ToolBack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:939(ComputerModernFontConstants)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:713(DejaVuSerifFonts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:100(set_width_ratios)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:178(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1036(tzstr)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:398(HandlerLineCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trifinder.py:7(TriFinder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:166(HandlerNpoints)\n", + " 3 0.000 0.000 0.000 0.000 {built-in method atexit.register}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1630(_simple_enum)\n", + " 1 0.000 0.000 0.000 0.000 {method 'pop' of 'collections.OrderedDict' objects}\n", + " 1 0.000 0.000 0.000 0.000 :52(normcase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1257(_check_spec_arg_typos)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:2168(wrap_logical_op_with_cast_to)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:51(IndexExpression)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:125(UserError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:1391(suppress_torch_distributed_warnings)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:45(GuardedCode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:144(DummyGlobalSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:490(NumpyTensorSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:94(HasPostInit)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:313(WrappedUserMethodVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:18(DefusedXmlException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:178(UnknownIntegerType)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:96(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1658(IndexLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3569(WordEnd)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:155(Greek)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2284(NoMatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3483(LineEnd)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:845(get_animated)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:380(ToolGrid)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:934(ToolCopyToClipboardBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1448(Glue)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:7(SpecLoaderAdapter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:95(_TransformedBoundsLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1592(DraggableAnnotation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1589(ParserError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1501(YearLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:66(weekday)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:208(HandlerNpointsYoffsets)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:314(HandlerPatch)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:37()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:540(_BackendAgg)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:972(__set_name__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:59(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:87(ONNXFakeContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:536(CleanupManager)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:998(_recomputation_hook)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:884(NullVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:39(EntitiesForbidden)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_util.py:14(DeferredError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:72(BaseType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:89(LinearScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:262(NullFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2271(BlendedAffine2D)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:192(_should_enable_warnings)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:256(RecursiveGrammarException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:130(BasicMultilingualPlane)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3506(StringStart)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4443(_Indent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3511(BracketAB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1877(SubplotTool)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:217(update_nested_dict)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:876(AutoDateFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:42(BarContainer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:809(__members__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/context.py:264(RuntimeErrorWithDiagnostic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_exporter_states.py:17(SymbolicContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:174(BindInputStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:1043(OnnxExporterError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1689(numpy_to_tensor_wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:522(TupleComp)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:180(dynamo_timed)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:48(InvalidBackend)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:757(ExportResult)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1015(WrapHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:483(LambdaVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:85(VoidType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:192(UnknownFloatType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1092(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1100(_fdat)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:257(_set_locator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:164(UnboundedMemo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:143(LatinA)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3775(_ErrorStop)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3436(LineStart)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5467(Dict)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1275(BrokenBarHCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1089(get_label)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:148(SmallFilledCircles)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:29(ClabelText)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3484(ShowBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:370(ToolQuitAll)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:395(ToolMinorGrid)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:410(ToolFullScreen)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:447(ToolXScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:618(ToolForward)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2476(Round)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3674(Fancy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1390(Rule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:13(ToolTriggerEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/__init__.py:8(_SubplotBaseMeta)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:572(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:199(__get_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:245(_MovedItems)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:91(_LazyDescr)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:8(_TzSingleton)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:18(ThetaFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:249(StreamplotSet)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:719(HandlerTuple)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5602(postParse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:450(_create_exit_wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1130(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:61(_create_beartype_decorator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:82(_NotProvided)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:152(name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:353(TupleIteratorGetItemSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:440(NNModuleSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:615(PythonModuleVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:193(InlinedClosureVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:20(MatplotlibDeprecationWarning)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:85(List)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3523(StringEnd)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1378(_attr)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:130(_calculate_meta)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:421(_unwrap_partial)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1544(__repr__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:465(_unary_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 {method 'popitem' of 'dict' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:26(InputAdaptStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:457(FlattenOutputWithTreeSpecValidationStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:167(ContextDecorator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:78(int16)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:269(reset)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:432(RunOnlyContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:441(DisableContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:141(GatherTraceback)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:99(OffloadWrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:506(ShapeEnvSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:38(AttributeMutation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:183(ClosureVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:282(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:341(validate_aspect)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementPath.py:350(_SelectorContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:261(PointerType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:5(CDefError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpGradientFile.py:66(GradientFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:8(_lazyclassproperty)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:195(Cyrillic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:235(Kanji)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:254(Katakana)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:293(Thai)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2273(Empty)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4449(_IndentGreater)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:14(HorizontalHatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1484(PickEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:634(SaveFigureBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1629(Done)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:910(_JSONEncoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2325(Square)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3473(BracketA)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:731(DejaVuSansFonts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:82(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:20(TraversableResourcesLoader)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:564(_LazyTickList)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:72(AxisInfo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:144(MovedAttribute)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1839(ConciseDateConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:772(HandlerPolyCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:347(Collection3D)\n", + " 4 0.000 0.000 0.000 0.000 {method 'remove' of 'set' objects}\n", + " 1 0.000 0.000 0.000 0.000 {method 'isdisjoint' of 'set' objects}\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._dynamo.eval_frame.set_guard_error_hook}\n", + " 2 0.000 0.000 0.000 0.000 {built-in method matplotlib._c_internal_utils.display_is_valid}\n", + " 3 0.000 0.000 0.000 0.000 :2(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:346(ExecutableNotFoundError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:26(OnnxExporterError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:62(SymbolicValueError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:51(CallHintViolationWarning)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:495(ExportOutputSerializer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:1035(UnsatisfiedDependencyError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:81(OutputAdaptStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:228(LiftParametersAndBuffersIntoArgsStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:107(CondOpArgsMismatchError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:97(ArgsMismatchError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:85(LoggingTensorMode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:75(ProfilerStartHook)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:464(GlobalStateSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:330(WrappedUserFunctionVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/nn_module.py:780(FSDPManagedNNModuleVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:54(AttributeMutationNew)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:747(_DunderChecker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:223(deprecate_privatize_attribute)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:590(PyCodecState)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1732(NullLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:304(FuncFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:149(LatinB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:242(Hiragana)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:308(Hebrew)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4899(_NullToken)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:95(__iter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:87(Shapes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:132(SmallCircles)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:111(_Unset)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1288(DrawEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1315(ResizeEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3595(Simple)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2763(Arc3)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3434(Curve)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3573(CurveBracket)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1563(AutoWidthChar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:950(STIXFontConstants)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:4(ToolEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:467(VPacker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:340(Module_six_moves_urllib_parse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1683(SecondLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:109(StemContainer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:241(ThetaFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trirefine.py:12(TriRefiner)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/BmpImagePlugin.py:362(DibImageFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py:1174(native_id)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:263(Invocation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:210(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:84(ProfilerEndHook)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:452(NotNNModuleSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:297(CondHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:48(AttributeMutationExisting)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:88(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1089(_idat)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:187(TickHelper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1046(LogFormatterMathtext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:81(_UnboundedCache)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:208(Chinese)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:268(Hangul)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:322(Devanagari)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1533(KeyEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2905(Arc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3492(BracketB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3551(BracketCurve)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1061(Hbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:161(Registry)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:543(__enter__)\n", + " 2 0.000 0.000 0.000 0.000 {method 'toordinal' of 'datetime.date' objects}\n", + " 1 0.000 0.000 0.000 0.000 {method 'move_to_end' of 'collections.OrderedDict' objects}\n", + " 2 0.000 0.000 0.000 0.000 {method '__exit__' of 'posix.ScandirIterator' objects}\n", + " 1 0.000 0.000 0.000 0.000 {method 'append' of 'collections.deque' objects}\n", + " 1 0.000 0.000 0.000 0.000 {built-in method _elementtree._set_factories}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:47(inexact)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:210(MergeKwargsIntoArgsStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:307(RemoveNonTensorInputStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:84(int32)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:90(int64)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:99(uint8)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:114(float32)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:126(complex64)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:55(ResetRequired)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:67(BackendCompilerFailed)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:527(_NullDecorator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:1045(_checkpoint_hook)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:198(ParamBufferSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:458(FSDPNNModuleSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:202(NewCellVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:308(_deprecated_parameter_class)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:100(__call__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:50(_ArtistKwdocLoader)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:350(validate_fontsize_None)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/__init__.py:75(UnidentifiedImageError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:106(ParseError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:239(FunctionPtrType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:285(NamedPointerType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2852(AutoLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:220(ParseException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:136(Latin1)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:300(Arabic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3398(PositionToken)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:48(NorthEastHatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:31(VerticalHatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:67(SouthEastHatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:9(HatchPatternBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:157(Stars)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:588(ViewsPositionsBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2642(Roundtooth)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2711(SimpleEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2348(Circle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2439(DArrow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2534(Round4)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2801(Angle3)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2841(Angle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3001(Bar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3533(BarAB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:782(Tfm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:959(STIXSansFontConstants)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1054(Vbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1476(HCentered)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1523(AutoHeightChar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:20(ToolManagerMessageEvent)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:125(execute)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:499(HPacker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:72(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:661(_result)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:373(_tzfile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:25(_TzOffsetFactory)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:55(_TzStrFactory)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1551(MonthLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1578(WeekdayLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1605(DayLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1633(HourLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1658(MinuteLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1156(_tzicalvtzcomp)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:77(ErrorbarContainer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:275(HandlerLine2D)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1061(_DOF_estimator_user)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/BmpImagePlugin.py:288(BmpRleDecoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_util.py:22(AxisError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:249(ConvertComplexToRealRepresentationInputStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:281(RemoveNoneInputStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:411(FlattenOutputStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:108(float16)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:138(bool_)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:36(RestartAnalysis)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:567(ShapeVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:622(FunctorchGradHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:792(FunctorchVmapHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:207(NewGlobalVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:204(BaseFunctionType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:75(_tilesort)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:332(FormatStrFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4835(OneOrMore)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2429(RArrow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1486(VCentered)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:19(_TzFactory)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:503(HandlerPathCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:16(TimerMac)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:968(ravel_multi_index)\n", + " 1 0.000 0.000 0.000 0.000 {method 'close' of 'generator' objects}\n", + " 2 0.000 0.000 0.000 0.000 {built-in method _stat.S_ISREG}\n", + " 1 0.000 0.000 0.000 0.000 :1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/linalg.py:13(LinAlgError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:39(number)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:20(OnnxExporterWarning)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:431(ConvertComplexToRealRepresentationOutputStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:120(float64)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:132(complex128)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:102(AttributeMutationError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:28(TorchDynamoException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:32(InternalTorchDynamoError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:716(_Handle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:762(_CheckpointFrame)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:579(ExecutorchCallDelegateHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1142(ExportTracepointHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:148(_missing)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:55(InvalidVersion)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:2(FFIError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:17(VerificationError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:97(BasePrimitiveType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpGradientFile.py:104(GimpGradientFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1030(LogFormatterExponent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2607(BboxTransformToMaxOnly)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:25(NonIntersectingPathException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:102(_FifoCache)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2344(_SingleCharLiteral)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2853(_WordRegex)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4672(Located)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:140(LargeCircles)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1076(set_in_layout)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1223(_timer_set_single_shot)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:627(ConfigureSubplotsBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1420(Vrule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:864(StixSansFonts)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:69()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:438(TerminateTrajectory)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PpmImagePlugin.py:279(PpmDecoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:729(getmro)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py:1590(main_thread)\n", + " 1 0.000 0.000 0.000 0.000 :1(__create_fn__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:43(integer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:143(IncorrectUsage)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:994(_StopRecomputationError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:938(AutogradFunctionMethodHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1080(OutDtypeHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:897(DeletedVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/optimizer.py:17(ArgMappingException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:874(_ignorecase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1796(FuncNorm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:85(DecompressionBombWarning)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2844(ImagePointHandler)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2853(ImageTransformHandler)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:22(VerificationMissing)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:28(PkgConfigError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:482(StructType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:486(UnionType)\n", + " 1 0.000 0.000 0.000 0.000 {method 'cleanup' of 'ImagingEncoder' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1093(LogFormatterSciNotation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:8()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1335(CloseEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3463(CurveFilledB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_blocking_input.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:52(ConversionError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/isoparser.py:43(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:402(Module_six_moves_urllib_request)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:454(Module_six_moves_urllib_response)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:513(HandlerCircleCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:43(_is_wildcard_pattern)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/__init__.py:45()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:213(_join)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_util.py:26(UFuncTypeError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:63(complexfloating)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:24(_apply_params)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:40(SkipFrame)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:720(_Holder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:35(UserDefinedVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:120(DelayGraphBreakVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/optimizer.py:21(GuardInstallException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:100(_disallow_in_graph_helper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:240(ParseFatalException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:247(ParseSyntaxException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:290(CJK)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/_version.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2574(NonGuiException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:382(Module_six_moves_urllib_error)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:475(Module_six_moves_urllib_robotparser)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:434(InvalidIndexError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:510(OutOfBounds)\n", + " 2 0.000 0.000 0.000 0.000 {method '__prepare__' of 'type' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/collections/__init__.py:658(update)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:345(__enter__)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method _thread.get_native_id}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/__init__.py:222(is_initialized)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method matplotlib.backends._macosx.event_loop_is_running}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:51(signedinteger)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:55(unsignedinteger)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:32(CheckerError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:59(floating)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:44(TorchRuntimeError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:93(RecompileError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:917(CheckpointError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:707(TupleIteratorVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:114(UnknownVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:89(DecompressionBombError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_version.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:71(NotSupportedError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/parsers/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:11(ExceptionWordUnicode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1868(draw)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1498()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3443(CurveA)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3453(CurveAB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3458(CurveFilledA)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3468(CurveFilledAB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:970(DejaVuSansFontConstants)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/__init__.py:14(SubplotBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:239(exec_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1608(UnknownTimezoneWarning)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/__init__.py:11(DeprecatedTzFormatWarning)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3448(CurveB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:966(DejaVuSerifFontConstants)\n", + " 1 0.000 0.000 0.000 0.000 {method 'islower' of 'bytes' objects}\n", + " 1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:249(_allowed_user_defined_function_ids)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:107(background_context)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/backends/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1220(_timer_set_interval)\n", + " 1 0.000 0.000 0.000 0.000 :1363(exec_module)\n", + "\n", + "\n" + ] + }, + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pstats.Stats(str(latest_profile)).sort_stats(\"cumulative\").print_stats()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e0d17747", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.2" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/placement.py b/placement.py index d70412d..ed66914 100644 --- a/placement.py +++ b/placement.py @@ -44,6 +44,9 @@ import torch import torch.optim as optim +from arg_parse_util import parse_args +from profiler_helper import run_with_optional_profile + # Feature index enums for cleaner code access class CellFeatureIdx(IntEnum): @@ -247,6 +250,12 @@ def generate_placement_input(num_macros, num_std_cells): # ======= OPTIMIZATION CODE (edit this part) ======= def wirelength_attraction_loss(cell_features, pin_features, edge_list): + # Q: Do I change this? + + # Vraj: change this later once the overlap loss is tuned + # Ans: No there are down stream calls that need this implementation to help evaluate the result + + # Keep this code for testing and create a loss function when needed. """Calculate loss based on total wirelength to minimize routing. This is a REFERENCE IMPLEMENTATION showing how to write a differentiable loss function. @@ -813,4 +822,4 @@ def main(): ) if __name__ == "__main__": - main() + run_with_optional_profile(main, parse_args(), OUTPUT_DIR) diff --git a/profiler_helper.py b/profiler_helper.py new file mode 100644 index 0000000..b5bd1ec --- /dev/null +++ b/profiler_helper.py @@ -0,0 +1,32 @@ +import os +from datetime import datetime + + +def build_profile_path(output_dir, profile_tag): + """Build a timestamped profile output path.""" + profile_dir = os.path.join(output_dir, "profile") + os.makedirs(profile_dir, exist_ok=True) + + timestamp = datetime.now().strftime("%Y%m%d_%H%M%S") + filename_parts = ["profile"] + if profile_tag: + filename_parts.append(profile_tag) + filename_parts.append(timestamp) + + return os.path.join(profile_dir, "_".join(filename_parts) + ".prof") + + +def run_with_optional_profile(main_fn, args, output_dir): + """Run main_fn(), optionally under cProfile.""" + if not args.profile: + main_fn() + return + + import cProfile + + profiler = cProfile.Profile() + profiler.runcall(main_fn) + + profile_path = build_profile_path(output_dir, args.profile_tag) + profiler.dump_stats(profile_path) + print(f"\nProfile stats dumped to: {profile_path}") From a682c7bb9d8146841a0b5651c48967575c9197ea Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 19 Apr 2026 12:09:09 -0700 Subject: [PATCH 02/48] known buggy implementation initial zero overlap for smaller params --- .../profiling-checkpoint.ipynb | 4415 ++++++++++++++++- lab/profiling.ipynb | 10 +- placement.py | 68 +- 3 files changed, 4480 insertions(+), 13 deletions(-) diff --git a/lab/.ipynb_checkpoints/profiling-checkpoint.ipynb b/lab/.ipynb_checkpoints/profiling-checkpoint.ipynb index 363fcab..bd12232 100644 --- a/lab/.ipynb_checkpoints/profiling-checkpoint.ipynb +++ b/lab/.ipynb_checkpoints/profiling-checkpoint.ipynb @@ -1,6 +1,4417 @@ { - "cells": [], - "metadata": {}, + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "16fc7e3c-465e-4189-86d0-54a1f6c5e169", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Latest profile: /Users/vrajpandya/repo/intern_challenge/profile/profile_20260418_091607.prof\n" + ] + } + ], + "source": [ + "from pathlib import Path\n", + "import pstats\n", + "\n", + "profile_dir = (Path.cwd() / \"..\" / \"profile\").resolve()\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "efbaba45", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Latest profile: /Users/vrajpandya/repo/intern_challenge/profile/profile_20260418_091607.prof\n" + ] + } + ], + "source": [ + "# reload latest profile\n", + "profiles = sorted(profile_dir.glob(\"*.prof\"), key=lambda path: path.stat().st_mtime)\n", + "\n", + "if not profiles:\n", + " raise FileNotFoundError(f\"No .prof files found in {profile_dir}\")\n", + "\n", + "latest_profile = profiles[-1]\n", + "print(f\"Latest profile: {latest_profile}\")\n" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "635d44c1", + "metadata": { + "scrolled": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Sat Apr 18 09:16:07 2026 /Users/vrajpandya/repo/intern_challenge/profile/profile_20260418_091607.prof\n", + "\n", + " 2875198 function calls (2837522 primitive calls) in 1.650 seconds\n", + "\n", + " Ordered by: cumulative time\n", + "\n", + " ncalls tottime percall cumtime percall filename:lineno(function)\n", + " 1 0.000 0.000 1.651 1.651 /Users/vrajpandya/repo/intern_challenge/placement.py:716(main)\n", + " 1 0.001 0.001 0.917 0.917 /Users/vrajpandya/repo/intern_challenge/placement.py:638(plot_placement)\n", + " 1 0.028 0.028 0.688 0.688 /Users/vrajpandya/repo/intern_challenge/placement.py:369(train_placement)\n", + " 375/8 0.001 0.000 0.631 0.079 :1167(_find_and_load)\n", + " 371/8 0.001 0.000 0.631 0.079 :1122(_find_and_load_unlocked)\n", + " 362/9 0.001 0.000 0.630 0.070 :666(_load_unlocked)\n", + " 350/9 0.000 0.000 0.630 0.070 :934(exec_module)\n", + " 944/13 0.000 0.000 0.629 0.048 :233(_call_with_frames_removed)\n", + " 806/9 0.020 0.000 0.626 0.070 {built-in method builtins.exec}\n", + " 189/16 0.000 0.000 0.477 0.030 {built-in method builtins.__import__}\n", + " 452/47 0.001 0.000 0.461 0.010 :1209(_handle_fromlist)\n", + " 1001 0.001 0.000 0.331 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_compile.py:20(inner)\n", + " 1 0.000 0.000 0.330 0.330 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1129(savefig)\n", + " 1 0.000 0.000 0.330 0.330 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3234(savefig)\n", + " 1 0.000 0.000 0.330 0.330 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2052(print_figure)\n", + " 1 0.000 0.000 0.294 0.294 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:15(__init__)\n", + " 1 0.000 0.000 0.294 0.294 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:239(__init__)\n", + " 1 0.000 0.000 0.293 0.293 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/__init__.py:1()\n", + " 1 0.000 0.000 0.239 0.239 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1()\n", + " 2 0.000 0.000 0.230 0.115 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2043()\n", + " 2 0.000 0.000 0.230 0.115 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:450(print_png)\n", + " 2 0.000 0.000 0.230 0.115 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:440(_print_pil)\n", + "1305/1164 0.009 0.000 0.199 0.000 {built-in method builtins.__build_class__}\n", + " 1 0.000 0.000 0.166 0.166 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1531(imsave)\n", + " 1 0.000 0.000 0.165 0.165 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2346(save)\n", + " 1 0.000 0.000 0.160 0.160 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1242(_save)\n", + " 1 0.000 0.000 0.160 0.160 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:499(_save)\n", + " 1 0.000 0.000 0.160 0.160 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:527(_encode_tile)\n", + " 2 0.160 0.080 0.160 0.080 {method 'encode' of 'ImagingEncoder' objects}\n", + " 105 0.000 0.000 0.145 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:159(_update_set_signature_and_docstring)\n", + " 104 0.000 0.000 0.143 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:126(__init_subclass__)\n", + " 1000 0.001 0.000 0.141 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:433(backward)\n", + " 1 0.000 0.000 0.140 0.140 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1459(subplots)\n", + " 1000 0.002 0.000 0.140 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/__init__.py:149(backward)\n", + " 1000 0.135 0.000 0.135 0.000 {method 'run_backward' of 'torch._C._EngineBase' objects}\n", + " 1 0.000 0.000 0.134 0.134 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:1()\n", + " 1 0.000 0.000 0.134 0.134 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:101(inner)\n", + " 2 0.000 0.000 0.134 0.067 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:82(remove)\n", + " 4/3 0.000 0.000 0.134 0.045 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:63(__call__)\n", + " 1 0.000 0.000 0.134 0.134 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:149(_allowed_function_ids)\n", + " 585/2 0.023 0.000 0.131 0.065 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:188(_find_torch_objects)\n", + " 7/3 0.000 0.000 0.130 0.043 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:443(wrapper)\n", + " 6 0.000 0.000 0.122 0.020 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4338(get_tightbbox)\n", + " 1 0.000 0.000 0.120 0.120 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1()\n", + " 1 0.000 0.000 0.114 0.114 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:1()\n", + " 117 0.000 0.000 0.113 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1837(kwdoc)\n", + " 350 0.001 0.000 0.110 0.000 :1007(get_code)\n", + " 2 0.000 0.000 0.102 0.051 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:93(draw_wrapper)\n", + " 592/2 0.001 0.000 0.102 0.051 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:54(draw_wrapper)\n", + " 2 0.000 0.000 0.102 0.051 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3134(draw)\n", + " 6/2 0.000 0.000 0.100 0.050 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:114(_draw_list_compositing_images)\n", + " 4 0.000 0.000 0.100 0.025 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3005(draw)\n", + " 1001 0.059 0.000 0.100 0.000 /Users/vrajpandya/repo/intern_challenge/placement.py:252(wirelength_attraction_loss)\n", + " 117 0.002 0.000 0.097 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1598(pprint_setters)\n", + " 14/10 0.000 0.000 0.096 0.010 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1404(_get_tightbbox_for_layout_only)\n", + " 22 0.000 0.000 0.095 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1320(get_tightbbox)\n", + " 1 0.000 0.000 0.095 0.095 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colorbar.py:1()\n", + " 1 0.000 0.000 0.094 0.094 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:777(figure)\n", + " 1 0.000 0.000 0.094 0.094 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:462(new_figure_manager)\n", + " 1 0.000 0.000 0.092 0.092 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:1()\n", + " 1 0.000 0.000 0.086 0.086 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3404(new_figure_manager)\n", + " 1 0.000 0.000 0.086 0.086 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3413(new_figure_manager_given_figure)\n", + " 1 0.000 0.000 0.086 0.086 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1774(new_manager)\n", + " 1 0.042 0.042 0.086 0.086 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2682(create_with_canvas)\n", + " 1 0.000 0.000 0.085 0.085 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1()\n", + " 122 0.002 0.000 0.083 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1270(_update_ticks)\n", + " 4252 0.006 0.000 0.080 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1470(get_valid_values)\n", + " 1 0.000 0.000 0.074 0.074 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:2591(tight_layout)\n", + " 1 0.000 0.000 0.074 0.074 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3508(tight_layout)\n", + " 1 0.000 0.000 0.074 0.074 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:163(execute)\n", + " 1 0.000 0.000 0.072 0.072 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:194(get_tight_layout_figure)\n", + " 1 0.000 0.000 0.072 0.072 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:20(_auto_adjust_subplotpars)\n", + " 15841 0.011 0.000 0.071 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:157(_is_allowed_module_prefix)\n", + " 9 0.000 0.000 0.068 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/__init__.py:108(import_module)\n", + " 9 0.000 0.000 0.068 0.008 :1194(_gcd_import)\n", + " 1 0.000 0.000 0.067 0.067 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/__init__.py:1()\n", + " 1 0.000 0.000 0.066 0.066 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/convert_frame.py:1()\n", + " 2 0.000 0.000 0.064 0.032 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:381(draw)\n", + " 1 0.000 0.000 0.060 0.060 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:1()\n", + " 350 0.000 0.000 0.060 0.000 :1127(get_data)\n", + " 1 0.000 0.000 0.059 0.059 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config.py:1()\n", + " 7277 0.040 0.000 0.059 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:867(cleandoc)\n", + " 1 0.000 0.000 0.059 0.059 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1736(get_tightbbox)\n", + " 2 0.000 0.000 0.057 0.028 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/__init__.py:1820(__getattr__)\n", + " 1 0.000 0.000 0.057 0.057 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/__init__.py:1()\n", + " 7315 0.003 0.000 0.055 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:848(getdoc)\n", + " 1 0.000 0.000 0.054 0.054 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:1()\n", + " 350 0.049 0.000 0.049 0.000 {method 'read' of '_io.BufferedReader' objects}\n", + " 462 0.002 0.000 0.049 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:915(get_window_extent)\n", + " 1 0.000 0.000 0.049 0.049 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1()\n", + " 23961 0.011 0.000 0.046 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:973(getmodule)\n", + " 7505 0.003 0.000 0.046 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:272(_compile)\n", + " 1 0.000 0.000 0.046 0.046 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:799(subplots)\n", + " 1 0.000 0.000 0.046 0.046 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:264(subplots)\n", + " 2 0.000 0.000 0.046 0.023 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:658(add_subplot)\n", + " 2 0.000 0.000 0.046 0.023 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:569(__init__)\n", + " 350 0.000 0.000 0.045 0.000 :727(_compile_bytecode)\n", + " 1000 0.003 0.000 0.045 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:356(wrapper)\n", + " 350 0.045 0.000 0.045 0.000 {built-in method marshal.loads}\n", + " 8 0.000 0.000 0.044 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1379(draw)\n", + " 1 0.000 0.000 0.043 0.043 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1()\n", + " 189 0.000 0.000 0.042 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:738(compile)\n", + " 10 0.000 0.000 0.041 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2943(_update_title_position)\n", + " 440 0.005 0.000 0.040 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:358(_get_layout)\n", + " 1 0.022 0.022 0.040 0.040 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:152(__init__)\n", + " 60 0.000 0.000 0.039 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1311(_get_ticklabel_bboxes)\n", + " 1 0.000 0.000 0.039 0.039 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:1()\n", + " 60 0.000 0.000 0.039 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1315()\n", + " 1 0.000 0.000 0.039 0.039 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1()\n", + " 1 0.000 0.000 0.038 0.038 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/__init__.py:1()\n", + " 1 0.000 0.000 0.038 0.038 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_axes.py:1()\n", + " 1000 0.008 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/nn/utils/clip_grad.py:12(clip_grad_norm_)\n", + " 123 0.000 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1209(wrap)\n", + " 8766 0.003 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:936(getsourcefile)\n", + " 223 0.000 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1422(__init__)\n", + " 123 0.003 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:884(_process_class)\n", + " 234 0.000 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:579(draw)\n", + " 223 0.006 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1442(get_aliases)\n", + " 1 0.000 0.000 0.037 0.037 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:1()\n", + " 1 0.000 0.000 0.036 0.036 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/__init__.py:1()\n", + " 62 0.001 0.000 0.036 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:142(get_window_extent)\n", + " 20 0.000 0.000 0.036 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2599(_update_label_position)\n", + " 30 0.000 0.000 0.036 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2143(_get_tick_boxes_siblings)\n", + " 1 0.000 0.000 0.036 0.036 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1()\n", + " 16993 0.009 0.000 0.035 0.000 {built-in method builtins.any}\n", + " 1000 0.002 0.000 0.034 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:58(_use_grad)\n", + " 1 0.000 0.000 0.034 0.034 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:1()\n", + " 1 0.000 0.000 0.034 0.034 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:1()\n", + " 106 0.000 0.000 0.033 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2376(add_patch)\n", + " 117 0.000 0.000 0.032 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:48(__init__)\n", + " 1 0.000 0.000 0.032 0.032 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/formatter.py:1()\n", + " 362 0.000 0.000 0.032 0.000 :566(module_from_spec)\n", + "12203/9731 0.005 0.000 0.031 0.000 {built-in method numpy.core._multiarray_umath.implement_array_function}\n", + " 1 0.000 0.000 0.031 0.031 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/__init__.py:1()\n", + " 1001 0.031 0.000 0.031 0.000 {built-in method torch.logsumexp}\n", + " 1000 0.002 0.000 0.031 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:130(step)\n", + " 1882 0.001 0.000 0.031 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:268(to_rgba)\n", + " 1 0.014 0.014 0.031 0.031 /Users/vrajpandya/repo/intern_challenge/placement.py:91(generate_placement_input)\n", + " 1 0.000 0.000 0.030 0.030 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:1()\n", + " 1 0.000 0.000 0.030 0.030 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1()\n", + " 93 0.000 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:350(get_tightbbox)\n", + " 189 0.000 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:970(parse)\n", + " 40 0.000 0.000 0.029 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:225(compile)\n", + " 123 0.000 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1192(dataclass)\n", + " 8780 0.003 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/package/package_importer.py:692(_patched_getfile)\n", + " 383/189 0.001 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:447(_parse_sub)\n", + " 553/192 0.011 0.000 0.028 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:507(_parse)\n", + " 2 0.000 0.000 0.028 0.014 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1198(_gen_axes_spines)\n", + " 2 0.000 0.000 0.028 0.014 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1213()\n", + " 8 0.000 0.000 0.028 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:432(linear_spine)\n", + " 8 0.000 0.000 0.028 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:35(__init__)\n", + " 233 0.000 0.000 0.028 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:340(_set_facecolor)\n", + " 127 0.000 0.000 0.028 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:347(set_facecolor)\n", + " 7764 0.001 0.000 0.028 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:961(getabsfile)\n", + " 28 0.028 0.001 0.028 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:364(by_key)\n", + " 1 0.000 0.000 0.027 0.027 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/__init__.py:1()\n", + " 1 0.000 0.000 0.027 0.027 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1()\n", + " 10 0.000 0.000 0.027 0.003 :1231(create_module)\n", + " 10 0.027 0.003 0.027 0.003 {built-in method _imp.create_dynamic}\n", + " 106 0.001 0.000 0.027 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2389(_update_patch_limits)\n", + " 1 0.000 0.000 0.026 0.026 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axes3d.py:1()\n", + " 1 0.000 0.000 0.026 0.026 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1()\n", + " 244 0.000 0.000 0.026 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2138(__call__)\n", + " 1000 0.002 0.000 0.025 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:254(adam)\n", + " 1 0.000 0.000 0.025 0.025 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:1()\n", + " 19 0.000 0.000 0.025 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:190(add)\n", + " 5 0.000 0.000 0.024 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:185(_recompile_re)\n", + " 8780 0.011 0.000 0.024 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:896(getfile)\n", + " 223 0.008 0.000 0.024 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1517(get_setters)\n", + " 122 0.000 0.000 0.024 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1606(get_major_ticks)\n", + " 244 0.000 0.000 0.024 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2142(tick_values)\n", + " 234 0.001 0.000 0.023 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:530(_draw_paths_with_artist_properties)\n", + " 121853 0.015 0.000 0.023 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:183()\n", + " 5768 0.002 0.000 0.022 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:173(search)\n", + " 37 0.000 0.000 0.022 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1555(_get_tick)\n", + " 900 0.001 0.000 0.022 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:65(_get_text_metrics_with_cache)\n", + " 10 0.000 0.000 0.022 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2358(_update_label_position)\n", + " 244 0.003 0.000 0.022 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2077(_raw_ticks)\n", + " 9 0.000 0.000 0.022 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:729(__init_subclass__)\n", + " 388 0.002 0.000 0.021 0.000 :1056(_find_spec)\n", + " 455 0.001 0.000 0.021 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:413(_create_fn)\n", + " 1001 0.001 0.000 0.021 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:33(disable)\n", + " 597 0.001 0.000 0.020 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:259(get_transform)\n", + " 1000 0.008 0.000 0.020 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:330(_single_tensor_adam)\n", + " 142 0.000 0.000 0.020 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:95(draw_path)\n", + " 50 0.000 0.000 0.020 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:287(draw)\n", + " 142 0.017 0.000 0.019 0.000 {method 'draw_path' of 'matplotlib.backends._backend_agg.RendererAgg' objects}\n", + " 1 0.000 0.000 0.019 0.019 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_fontconfig_pattern.py:1()\n", + "281051/281043 0.016 0.000 0.019 0.000 {built-in method builtins.isinstance}\n", + " 1 0.000 0.000 0.019 0.019 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/__init__.py:1()\n", + " 122 0.001 0.000 0.019 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1497(get_minorticklocs)\n", + "6348/5165 0.002 0.000 0.018 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:289(wrapper)\n", + " 519 0.002 0.000 0.018 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:746(get_patch_transform)\n", + " 388 0.000 0.000 0.018 0.000 :1496(find_spec)\n", + " 388 0.001 0.000 0.018 0.000 :1464(_get_spec)\n", + " 1001 0.003 0.000 0.018 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:267(__call__)\n", + " 742 0.000 0.000 0.017 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3277(signature)\n", + " 742 0.000 0.000 0.017 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3023(from_callable)\n", + " 865/742 0.002 0.000 0.017 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2426(_signature_from_callable)\n", + " 4 0.015 0.004 0.017 0.004 /Users/vrajpandya/repo/intern_challenge/placement.py:470(calculate_overlap_metrics)\n", + " 37 0.001 0.000 0.016 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:65(__init__)\n", + " 136 0.000 0.000 0.016 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:38(__call__)\n", + " 499 0.002 0.000 0.016 0.000 :1604(find_spec)\n", + " 30 0.005 0.000 0.016 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:847(_rc_params_in_file)\n", + " 126/115 0.000 0.000 0.016 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:79(__call__)\n", + " 106981 0.010 0.000 0.015 0.000 {built-in method builtins.getattr}\n", + " 1001 0.002 0.000 0.015 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:307(_fn)\n", + " 2 0.000 0.000 0.015 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1381(clear)\n", + " 2 0.000 0.000 0.015 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1254(__clear)\n", + " 219049 0.015 0.000 0.015 0.000 {method 'startswith' of 'str' objects}\n", + " 1148 0.001 0.000 0.014 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1472(transform)\n", + " 1 0.000 0.000 0.013 0.013 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/__init__.py:1()\n", + " 1 0.000 0.000 0.013 0.013 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:1()\n", + " 122 0.000 0.000 0.013 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1493(get_majorticklocs)\n", + " 1 0.000 0.000 0.013 0.013 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:1()\n", + "2598/1427 0.004 0.000 0.013 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2431(get_affine)\n", + " 12 0.000 0.000 0.013 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:51(__missing__)\n", + " 223 0.008 0.000 0.013 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1453()\n", + " 1 0.000 0.000 0.012 0.012 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:1()\n", + " 133 0.000 0.000 0.012 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:651(union)\n", + " 189 0.000 0.000 0.012 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:571(_code)\n", + " 1 0.000 0.000 0.012 0.012 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2645(__init__)\n", + " 1 0.011 0.011 0.011 0.011 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:120(__init__)\n", + " 128 0.001 0.000 0.011 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:734(draw)\n", + " 19 0.000 0.000 0.011 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:412(__init__)\n", + " 2 0.000 0.000 0.011 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:206(read_style_directory)\n", + " 123 0.000 0.000 0.011 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:600(get_window_extent)\n", + " 456 0.011 0.000 0.011 0.000 {built-in method builtins.dir}\n", + " 1 0.000 0.000 0.011 0.011 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_axes.py:46(Axes)\n", + " 18 0.000 0.000 0.011 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:469(__init__)\n", + " 39 0.000 0.000 0.011 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:73(_get_text_metrics_with_cache_impl)\n", + " 39 0.000 0.000 0.011 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:208(get_text_width_height_descent)\n", + " 9940 0.010 0.000 0.010 0.000 {method 'search' of 're.Pattern' objects}\n", + " 244 0.000 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:213(format_ticks)\n", + " 1 0.000 0.000 0.010 0.010 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:1()\n", + " 123 0.001 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:528(_init_fn)\n", + " 804 0.002 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1176(_update_props)\n", + " 1059/189 0.005 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:37(_compile)\n", + " 1148 0.001 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2406(transform_affine)\n", + " 1000 0.003 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:776(zero_grad)\n", + " 150 0.001 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:738(draw)\n", + " 350 0.009 0.000 0.009 0.000 {built-in method io.open_code}\n", + " 695 0.003 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2331(_signature_from_function)\n", + " 1 0.000 0.000 0.009 0.009 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1()\n", + " 6334 0.005 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2683(__init__)\n", + " 260 0.000 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:225(__init__)\n", + " 4698 0.003 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:69(_wrapreduction)\n", + " 72 0.000 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1233(findfont)\n", + " 714 0.000 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1212(_internal_update)\n", + " 25 0.000 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1576(_copy_tick_props)\n", + " 260 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:306(_set_marker)\n", + " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/__init__.py:1()\n", + " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1()\n", + " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1()\n", + " 5085 0.004 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:66(copy)\n", + " 152 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2757(get_tick_space)\n", + " 9669 0.008 0.000 0.008 0.000 {method 'reduce' of 'numpy.ufunc' objects}\n", + " 350 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1418(__sub__)\n", + " 75 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1336(update_from)\n", + " 519 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:880(get_bbox)\n", + " 68 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:250(_prepare_font)\n", + " 2 0.002 0.001 0.008 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1393(_findfont_cached)\n", + " 492 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:147()\n", + " 2722 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1340(__add__)\n", + " 123 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:607(get_extents)\n", + " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:1()\n", + " 8 0.000 0.000 0.008 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4306(get_default_bbox_extra_artists)\n", + " 1000 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_contextlib.py:112(decorate_context)\n", + " 976 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:711(__setitem__)\n", + " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:439(_warn_if_gui_out_of_main_thread)\n", + " 3 0.000 0.000 0.008 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:270(_get_backend_mod)\n", + " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:1()\n", + " 2/1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:284(switch_backend)\n", + " 492 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1223(set)\n", + " 8 0.000 0.000 0.008 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4335()\n", + " 111 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:287(__init__)\n", + " 122 0.000 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:699(set_locs)\n", + " 12751 0.004 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:741(__getitem__)\n", + "5559/5339 0.001 0.000 0.007 0.000 {built-in method builtins.next}\n", + " 1 0.000 0.000 0.007 0.007 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1()\n", + " 1 0.000 0.000 0.007 0.007 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_code_flow.py:1()\n", + " 464 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:860(_fully_clipped_to_axes)\n", + " 1294 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1106(get_points)\n", + " 2000 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/profiler.py:630(__enter__)\n", + " 36 0.000 0.000 0.007 0.000 :1655(_fill_cache)\n", + " 4675/75 0.003 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:128(deepcopy)\n", + " 12/8 0.000 0.000 0.007 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:575(__get__)\n", + "4816/4734 0.004 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:773(is_safe_constant)\n", + " 300/75 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:227(_deepcopy_dict)\n", + " 437 0.000 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1536(number_of_parameters)\n", + " 94 0.000 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1391(_preprocess_data)\n", + " 2722 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2498(composite_transform_factory)\n", + " 36 0.007 0.000 0.007 0.000 {built-in method posix.listdir}\n", + " 20 0.000 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:944(set_tick_params)\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1()\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:240(_check_versions)\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:1()\n", + " 2436 0.006 0.000 0.006 0.000 {built-in method posix.stat}\n", + " 1047 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:813(from_extents)\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow.py:1()\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_caffe2.py:1()\n", + " 954 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1542(is_alias)\n", + " 1913 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:51(_wrapfunc)\n", + "16691/13889 0.003 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:317(stale)\n", + " 32774 0.005 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:283(ismodule)\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:1()\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:1()\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:1()\n", + " 2257 0.004 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:35(update_wrapper)\n", + "155602/154398 0.006 0.000 0.006 0.000 {built-in method builtins.len}\n", + " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/__init__.py:1()\n", + " 134 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:772(set_clip_path)\n", + " 2834 0.004 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:638(__hash__)\n", + " 626 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:508(update_position)\n", + "2760/2701 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:338(inner)\n", + " 105 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:170()\n", + " 6 0.000 0.000 0.006 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3157(grid)\n", + " 1908 0.002 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:259(_reconstruct)\n", + " 12 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1658(grid)\n", + " 1938 0.001 0.000 0.006 0.000 <__array_function__ internals>:177(amin)\n", + " 2000 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:687(__call__)\n", + " 1962 0.001 0.000 0.006 0.000 <__array_function__ internals>:177(amax)\n", + " 1 0.006 0.006 0.006 0.006 {built-in method set_icon}\n", + " 28626 0.004 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:162(__getitem__)\n", + " 123 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:624(_cmp_fn)\n", + " 106 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1400(contains_branch_seperately)\n", + " 88 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:104(__init__)\n", + "2488/2433 0.001 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:132(__enter__)\n", + " 106 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1381(contains_branch)\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow_location.py:1()\n", + " 2000 0.005 0.000 0.005 0.000 {built-in method torch._ops.profiler._record_function_enter_new}\n", + " 3798 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1889(__init__)\n", + " 68 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1303(_find_fonts_by_props)\n", + " 123 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:588(_repr_fn)\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_conversion.py:1()\n", + "17646/17633 0.004 0.000 0.005 0.000 {method 'join' of 'str' objects}\n", + " 15237 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:252(get)\n", + " 732 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2265(getter)\n", + " 2513 0.003 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:758(__init__)\n", + " 1118 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:899(copy)\n", + " 4 0.000 0.000 0.005 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:882(clear)\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:1()\n", + " 54891 0.005 0.000 0.005 0.000 {built-in method builtins.min}\n", + "5790/5337 0.002 0.000 0.005 0.000 {built-in method __new__ of type object at 0x1057ebd60}\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1()\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builtin.py:1()\n", + " 2000 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/profiler.py:636(__exit__)\n", + " 109 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:694(__init__)\n", + " 92 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2514(get_tick_space)\n", + " 848 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:374(extents)\n", + " 628 0.001 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:738(_convert_units)\n", + " 36 0.001 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:488(__new__)\n", + "1576/1574 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1777(__eq__)\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:1()\n", + " 2220 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2348(__init__)\n", + " 68 0.005 0.000 0.005 0.000 {method 'set_text' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 4252 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1555(aliased_name)\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/textpath.py:1()\n", + " 842 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:847(viewLim)\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_properties.py:1()\n", + " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/quiver.py:1()\n", + " 931 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:649(__eq__)\n", + " 1938 0.001 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2829(amin)\n", + " 4 0.000 0.000 0.005 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:794(_set_scale)\n", + " 4 0.000 0.000 0.004 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:103(set_default_locators_and_formatters)\n", + " 1908/848 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2391(_iter_break_from_left_to_right)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:489(InstructionTranslatorBase)\n", + " 1026 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2969(__init__)\n", + " 1303 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:38(_wrapit)\n", + "5281/3214 0.001 0.000 0.004 0.000 {built-in method builtins.hash}\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/__init__.py:1()\n", + " 43052 0.004 0.000 0.004 0.000 {built-in method builtins.hasattr}\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/__init__.py:1()\n", + " 1962 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2703(amax)\n", + " 846 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:833(_unstale_viewLim)\n", + " 2000 0.002 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:46(_has_foreach_support)\n", + " 33 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:162(stack_op)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:1()\n", + " 636 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:413(iter_bezier)\n", + " 137 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:666(recache)\n", + " 1 0.004 0.004 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:39(__init__)\n", + " 636 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:723(_get_field)\n", + " 362 0.001 0.000 0.004 0.000 :493(_init_module_attrs)\n", + " 4 0.000 0.000 0.004 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:425(__init__)\n", + " 4 0.000 0.000 0.004 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:537(set_useMathText)\n", + " 8861 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:691(__call__)\n", + " 1000 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:34(wrapped)\n", + " 1 0.000 0.000 0.004 0.004 /Users/vrajpandya/repo/intern_challenge/placement.py:586(calculate_normalized_metrics)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/ElementTree.py:1()\n", + " 2001 0.004 0.000 0.004 0.000 {built-in method torch.stack}\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:1()\n", + " 76922 0.004 0.000 0.004 0.000 {method 'lstrip' of 'str' objects}\n", + " 410 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:447(update_position)\n", + " 1 0.004 0.004 0.004 0.004 /Users/vrajpandya/repo/intern_challenge/placement.py:541(calculate_cells_with_overlaps)\n", + " 2123 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1782(transform)\n", + " 1490/642 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2384(__eq__)\n", + " 7104 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1769(__init__)\n", + " 1000 0.004 0.000 0.004 0.000 {built-in method torch._foreach_norm}\n", + " 48 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1347(_add_data_doc)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:1()\n", + " 341 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:595(__init__)\n", + "2488/2433 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:141(__exit__)\n", + " 109 0.004 0.000 0.004 0.000 {built-in method torch.rand}\n", + " 1404 0.000 0.000 0.004 0.000 :140(_path_stat)\n", + " 84433 0.004 0.000 0.004 0.000 {method 'append' of 'list' objects}\n", + " 256 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:463(transformed)\n", + " 1047 0.000 0.000 0.004 0.000 <__array_function__ internals>:177(reshape)\n", + " 1478 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:103(_stale_axes_callback)\n", + " 13069 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:690(_get)\n", + " 122 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:781(_set_format)\n", + " 122 0.000 0.000 0.004 0.000 <__array_function__ internals>:177(isclose)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:321(preinit)\n", + " 1231/365 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:172(getwidth)\n", + " 846 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:836()\n", + " 522 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:804(from_bounds)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1()\n", + " 18314 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:292(isclass)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1()\n", + " 244 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1564(_get_tick_label_size)\n", + " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/common.py:1()\n", + " 122 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:2278(isclose)\n", + " 4 0.000 0.000 0.004 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1108(set_clip_path)\n", + " 1000 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:911(__rdiv__)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/__init__.py:1()\n", + " 3 0.000 0.000 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:393(get_renderer)\n", + " 3 0.003 0.001 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:64(__init__)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/common.py:8(pyparsing_common)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1()\n", + " 4 0.000 0.000 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:87()\n", + " 4 0.000 0.000 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:75(_cmp_wrapper)\n", + " 18 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:799(validate_cycler)\n", + " 55889 0.003 0.000 0.003 0.000 {method 'get' of 'dict' objects}\n", + " 96 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:157(_reset_visual_defaults)\n", + " 700 0.001 0.000 0.003 0.000 :437(cache_from_source)\n", + " 2100 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1291(set_ydata)\n", + " 8 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:31(__call__)\n", + " 16 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:22(get_cls)\n", + " 1006 0.000 0.000 0.003 0.000 :16(exists)\n", + " 959 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1998(rotate_deg)\n", + " 29 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:187(draw_text)\n", + " 244 0.000 0.000 0.003 0.000 <__array_function__ internals>:177(clip)\n", + " 3091 0.003 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:182(set_children)\n", + " 2548 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2011(_setattr_cm)\n", + " 5120 0.001 0.000 0.003 0.000 :117(__instancecheck__)\n", + " 2002 0.003 0.000 0.003 0.000 {built-in method torch.abs}\n", + "4452/4450 0.001 0.000 0.003 0.000 {built-in method builtins.all}\n", + " 2/1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_jit_internal.py:478(fn)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/functional.py:970(_return_output)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/functional.py:740(_unique_impl)\n", + " 1 0.003 0.003 0.003 0.003 {built-in method unique_dim}\n", + " 10655 0.003 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:400(istype)\n", + " 1470 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:664(_is_type)\n", + " 9282 0.003 0.000 0.003 0.000 {method 'split' of 'str' objects}\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1()\n", + " 16172 0.003 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:231(__next)\n", + " 2846 0.001 0.000 0.003 0.000 :126(_path_join)\n", + " 453 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:237(__set_name__)\n", + " 1003 0.003 0.000 0.003 0.000 {built-in method torch.tensor}\n", + " 244 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2111(clip)\n", + " 3314 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:158(invalidate)\n", + " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:220(extract_stack)\n", + " 1000 0.001 0.000 0.003 0.000 /Users/vrajpandya/repo/intern_challenge/placement.py:308(overlap_repulsion_loss)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:1()\n", + " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:375(extract)\n", + " 2246 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1849(transform_affine)\n", + " 123 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1593(transform_path)\n", + " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:397(_extract_from_extended_frame_gen)\n", + " 3 0.000 0.000 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2211(__init_subclass__)\n", + " 1906 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:416(pchanged)\n", + " 530 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:208(__call__)\n", + " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2253(pprint_styles)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:92(_disallowed_function_ids)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1728(get_default_bbox_extra_artists)\n", + " 1604 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1758(convert_units)\n", + " 1047 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:198(reshape)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/table.py:1()\n", + " 760 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:302(xmin)\n", + " 244 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:216()\n", + " 83 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:316(line)\n", + " 1000 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:109(_default_to_fused_or_foreach)\n", + " 810 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:317(ymax)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_result.py:1()\n", + " 394 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:99(__init__)\n", + " 21 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:26(getline)\n", + " 176 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:94(closegroup)\n", + " 21 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:36(getlines)\n", + " 1000 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/__init__.py:56(_make_grads)\n", + " 1000 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:34(_group_tensors_by_device_and_dtype)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:1()\n", + " 11 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:80(updatecache)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool.py:1()\n", + " 2598 0.001 0.000 0.003 0.000 <__array_function__ internals>:177(dot)\n", + " 165/106 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:461(__getitem__)\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:32(_gen_cmap_registry)\n", + " 33 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2315(_signature_from_builtin)\n", + " 1885 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:269(convert_xunits)\n", + " 13322 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:170(append)\n", + " 2489 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:287(helper)\n", + " 790 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:307(ymin)\n", + " 959 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1975(rotate)\n", + " 33 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2172(_signature_fromstr)\n", + " 760 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:312(xmax)\n", + " 12 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1076(parse_string)\n", + " 18136 0.002 0.000 0.003 0.000 {built-in method builtins.max}\n", + " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2257()\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend.py:1()\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact.py:1()\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1()\n", + " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1()\n", + " 131 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:239(__array__)\n", + " 1000 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:80(_init_group)\n", + " 424 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1710(__eq__)\n", + " 133 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:656()\n", + " 4000 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/grad_mode.py:182(__init__)\n", + " 123 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1602(transform_path_affine)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_secondary_axes.py:1()\n", + " 61 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(isin)\n", + " 15841 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:176()\n", + " 44125 0.002 0.000 0.002 0.000 {built-in method builtins.id}\n", + " 1604 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:56(_is_natively_supported)\n", + " 243 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1333(__init__)\n", + " 9181 0.002 0.000 0.002 0.000 {method 'copy' of 'numpy.ndarray' objects}\n", + " 61 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:766(isin)\n", + " 424 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2162(__eq__)\n", + " 1921 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:285(process)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:1()\n", + " 710 0.000 0.000 0.002 0.000 :392(cached)\n", + " 999 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:572(__call__)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:1()\n", + " 530 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:199(__init__)\n", + " 1883 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:281(convert_yunits)\n", + " 61 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(in1d)\n", + " 1452 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1270(set_xdata)\n", + " 5120 0.001 0.000 0.002 0.000 {built-in method _abc._abc_instancecheck}\n", + " 133 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:657()\n", + " 582 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1743(normalize_kwargs)\n", + " 1324 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:68(_stale_figure_callback)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_run.py:1()\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:1()\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool_component.py:1()\n", + " 2000 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:447(__call__)\n", + " 244 0.000 0.000 0.002 0.000 {method 'clip' of 'numpy.ndarray' objects}\n", + " 388 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:690(new_gc)\n", + " 12104 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:113(__init__)\n", + " 61 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:524(in1d)\n", + " 15818 0.002 0.000 0.002 0.000 {built-in method builtins.setattr}\n", + " 105 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:638(Union)\n", + " 133 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:658()\n", + " 45 0.001 0.000 0.002 0.000 {built-in method builtins.eval}\n", + " 582 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:356(__setitem__)\n", + " 133 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:659()\n", + " 68 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1525(get_font)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:1()\n", + " 1001 0.002 0.000 0.002 0.000 {built-in method torch.sum}\n", + " 244 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:127(_clip)\n", + " 1745 0.002 0.000 0.002 0.000 {built-in method torch.randint}\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mathtext.py:1()\n", + " 360 0.000 0.000 0.002 0.000 :567(_get_cached)\n", + " 388 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:766(__init__)\n", + " 122 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:2359(within_tol)\n", + " 13 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:401(validate_font_properties)\n", + " 10 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_fontconfig_pattern.py:80(parse_fontconfig_pattern)\n", + " 1581 0.000 0.000 0.002 0.000 {method 'all' of 'numpy.ndarray' objects}\n", + " 668 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(all)\n", + " 631 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:221(is_color_like)\n", + " 7289 0.002 0.000 0.002 0.000 {method 'expandtabs' of 'str' objects}\n", + " 5903 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/function_base.py:346(iterable)\n", + " 90 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:194(update)\n", + " 28 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:599(_frozen_get_del_attr)\n", + " 10878 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:378(isfunction)\n", + " 790 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1115(score_family)\n", + " 549 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:168(_type_check)\n", + " 409 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:307(validate_color)\n", + " 2000 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/profiler.py:619(__init__)\n", + " 110 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1229(_cm_set)\n", + " 1167 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2043(scale)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/parsers/expat.py:1()\n", + " 7583 0.002 0.000 0.002 0.000 {built-in method numpy.asarray}\n", + " 1 0.002 0.002 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1493(_get_font)\n", + " 571 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:296(wrapper)\n", + " 1634 0.000 0.000 0.002 0.000 {method 'max' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_invocation.py:1()\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:1()\n", + " 306/12 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:776(_parseNoCache)\n", + "4747/3314 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:167(_invalidate_internal)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/kiwisolver/__init__.py:1()\n", + " 4284 0.002 0.000 0.002 0.000 {built-in method numpy.array}\n", + " 72/12 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3861(parseImpl)\n", + " 6510 0.002 0.000 0.002 0.000 {method 'item' of 'torch._C._TensorBase' objects}\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/__init__.py:1()\n", + "2195/2193 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2592(get_matrix)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:1()\n", + " 1000 0.002 0.000 0.002 0.000 {method 'mul_' of 'torch._C._TensorBase' objects}\n", + " 122 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:708(_compute_offset)\n", + " 189 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:509(_compile_info)\n", + " 3003 0.002 0.000 0.002 0.000 {method 'long' of 'torch._C._TensorBase' objects}\n", + " 53 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:662(intersection)\n", + " 111 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:88(f)\n", + " 1000 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_contextlib.py:141(clone)\n", + " 2489 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:104(__init__)\n", + " 9 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5392(__init__)\n", + " 1768 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:909(get_siblings)\n", + " 2000 0.002 0.000 0.002 0.000 {built-in method torch._ops.profiler.}\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_location.py:1()\n", + " 371 0.000 0.000 0.002 0.000 :169(__enter__)\n", + " 360 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:180(__init__)\n", + " 29/8 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4379(leave_whitespace)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/fft.py:1()\n", + " 2000/493 0.000 0.000 0.002 0.000 :121(__subclasscheck__)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1564(_load_fontmanager)\n", + " 1000 0.002 0.000 0.002 0.000 {built-in method torch.clamp}\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:1()\n", + " 8821 0.002 0.000 0.002 0.000 {method 'format' of 'str' objects}\n", + " 1141 0.000 0.000 0.002 0.000 {method 'min' of 'numpy.ndarray' objects}\n", + " 8765 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:456(istraceback)\n", + " 9122 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:300(ismethod)\n", + " 1000 0.002 0.000 0.002 0.000 {method 'addcmul_' of 'torch._C._TensorBase' objects}\n", + " 1000 0.002 0.000 0.002 0.000 {method 'add_' of 'torch._C._TensorBase' objects}\n", + " 1000 0.002 0.000 0.002 0.000 {built-in method torch._foreach_mul_}\n", + " 1581 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:61(_all)\n", + " 2674 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:405(_strip_comment)\n", + " 106 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2491(update_datalim)\n", + " 32 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1036(from_list)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tricontour.py:1()\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_address.py:1()\n", + " 75 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:279(__deepcopy__)\n", + " 482 0.000 0.000 0.002 0.000 :159(_path_isfile)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:970(json_load)\n", + " 409 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:499(copy)\n", + " 2000/493 0.001 0.000 0.002 0.000 {built-in method _abc._abc_subclasscheck}\n", + " 1004 0.002 0.000 0.002 0.000 {method 'clone' of 'torch._C._TensorBase' objects}\n", + " 36 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:347(_apply_params)\n", + " 122 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:747(_set_order_of_magnitude)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/__init__.py:274(load)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:157(Version)\n", + " 8765 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:480(iscode)\n", + " 519 0.000 0.000 0.002 0.000 :150(_path_is_mode_type)\n", + " 309 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(column_stack)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/JpegImagePlugin.py:1()\n", + " 28 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:182(_collapse_string_to_ranges)\n", + " 11 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2815(__new__)\n", + " 366 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(round_)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/__init__.py:1()\n", + " 1634 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:39(_amax)\n", + " 4698 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:70()\n", + " 668 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2432(all)\n", + " 8765 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:466(isframe)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:1()\n", + " 7 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:392(open)\n", + " 1000 0.002 0.000 0.002 0.000 {method 'lerp_' of 'torch._C._TensorBase' objects}\n", + " 2846 0.001 0.000 0.002 0.000 :128()\n", + " 1001 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:442(__init__)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2752(_get_renderer)\n", + " 59 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:678(Optional)\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1()\n", + " 999 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:514(_format_maybe_minus_and_locale)\n", + " 1329 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:966(_auto_draw_if_interactive)\n", + " 386 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:626(translated)\n", + " 8 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2678(__init__)\n", + " 3764 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:99(check_in_list)\n", + " 2 0.002 0.001 0.002 0.001 {method 'sum' of 'torch._C._TensorBase' objects}\n", + " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:1()\n", + " 96 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1303(set_fontproperties)\n", + " 27 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/collections/__init__.py:348(namedtuple)\n", + " 90 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1201(update)\n", + " 241 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:279(validate_color_for_prop_cycle)\n", + " 2513 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:216(_is_nth_color)\n", + " 35 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:107()\n", + " 1141 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:43(_amin)\n", + " 790 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1191(score_weight)\n", + " 252 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2817(nonsingular)\n", + " 55/8 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3635(leave_whitespace)\n", + " 40 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:299(detect_encoding)\n", + " 999 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2897(_interval_contains_close)\n", + " 1000 0.001 0.000 0.001 0.000 {built-in method torch._C._linalg.linalg_vector_norm}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/html/__init__.py:1()\n", + " 488 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:93(_clip_dep_is_scalar_nan)\n", + " 118 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3231(__str__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/context.py:1()\n", + " 5578 0.001 0.000 0.001 0.000 {method 'match' of 're.Pattern' objects}\n", + " 790 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1173(score_stretch)\n", + " 882 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:64(check_isinstance)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_change.py:1()\n", + " 1000 0.001 0.000 0.001 0.000 {built-in method torch._C._group_tensors_by_device_and_dtype}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/__init__.py:1()\n", + " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/grad_mode.py:78(__enter__)\n", + " 11 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2795(_make_nmtuple)\n", + " 5 0.001 0.000 0.001 0.000 {built-in method torch.sqrt}\n", + " 114/57 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3722(copy)\n", + " 1761 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1277(__setattr__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axes3d.py:42(Axes3D)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives.py:1()\n", + " 36071 0.001 0.000 0.001 0.000 {built-in method builtins.callable}\n", + " 137 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(broadcast_arrays)\n", + " 584 0.001 0.000 0.001 0.000 :179(_get_module_lock)\n", + " 18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:662(cycler)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset11.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/__init__.py:299(loads)\n", + " 356 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:786(_finddoc)\n", + " 3 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:592(getmembers)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/decoder.py:332(decode)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/decoder.py:343(raw_decode)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:1()\n", + " 3 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:550(_getmembers)\n", + " 366 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3754(round_)\n", + " 42 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:323(read_or_stop)\n", + " 14 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:595(set_parse_action)\n", + " 1038 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2030(translate)\n", + " 19434 0.001 0.000 0.001 0.000 {method 'items' of 'dict' objects}\n", + " 9 0.001 0.000 0.001 0.000 {method 'readline' of '_io.BufferedReader' objects}\n", + " 394 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:794(unit)\n", + " 123 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1800(transform_path_affine)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1619(_get_renderer)\n", + " 33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2100(_signature_strip_non_python_syntax)\n", + " 388 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:923(_set_gc_clip)\n", + " 309 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/shape_base.py:612(column_stack)\n", + " 39 0.001 0.000 0.001 0.000 {built-in method io.open}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5798()\n", + " 10 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2398(_update_offset_text_position)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/random.py:26(manual_seed)\n", + " 1332 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1285(is_interactive)\n", + " 1149 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:786(get_transform)\n", + " 99/33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:95(__call__)\n", + " 137 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:480(broadcast_arrays)\n", + " 1000 0.001 0.000 0.001 0.000 {method 'addcdiv_' of 'torch._C._TensorBase' objects}\n", + " 4811 0.001 0.000 0.001 0.000 {built-in method builtins.sorted}\n", + " 363 0.000 0.000 0.001 0.000 :1599(_get_spec)\n", + " 18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:262(_trim_arity)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:609(_ensure_mutable)\n", + " 98 0.000 0.000 0.001 0.000 :105(__new__)\n", + " 14 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:675()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:603(_copy)\n", + " 37 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1029(get_path)\n", + " 8859 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1096(__new__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/deprecated.py:1()\n", + " 1 0.001 0.001 0.001 0.001 {method 'copy' of 'ImagingCore' objects}\n", + " 366 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(around)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1()\n", + " 518 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1279(_preprocess_math)\n", + " 106 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:930(update_from_data_xy)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/random.py:109(manual_seed_all)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/__init__.py:227(_lazy_call)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:213(format_stack)\n", + " 19 0.000 0.000 0.001 0.000 :73(find_spec)\n", + " 99/33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:346(__post_init__)\n", + " 700 0.000 0.000 0.001 0.000 :132(_path_split)\n", + "3360/2126 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2398()\n", + " 22 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4779(parseImpl)\n", + " 12 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:237(set_clip_path)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ndarray.py:1()\n", + " 860 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:735(unwrap)\n", + " 7 0.001 0.000 0.001 0.000 {method 'readlines' of '_io._IOBase' objects}\n", + " 462 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:890(get_unitless_position)\n", + "4867/4697 0.001 0.000 0.001 0.000 {method 'update' of 'dict' objects}\n", + " 396/33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:141(apply)\n", + " 1 0.001 0.001 0.001 0.001 {built-in method torch.full}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/api.py:1()\n", + " 1060 0.001 0.000 0.001 0.000 {method 'outer' of 'numpy.ufunc' objects}\n", + " 636 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:347(iter_segments)\n", + " 114/57 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3724()\n", + " 67 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:128(deprecate)\n", + " 999 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:245(fix_minus)\n", + " 571 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:213(register)\n", + " 1000 0.001 0.000 0.001 0.000 {method 'sqrt' of 'torch._C._TensorBase' objects}\n", + " 13070 0.001 0.000 0.001 0.000 {function RcParams.__getitem__ at 0x13d5fd440}\n", + " 1000 0.001 0.000 0.001 0.000 {built-in method torch.ones_like}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1()\n", + " 522 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2576(__init__)\n", + " 102 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1540(copy_with)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:20(Base)\n", + " 2 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:810(_init_axis)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:1()\n", + " 4345 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:198()\n", + " 2248 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1355(_iter_break_from_left_to_right)\n", + " 1151 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:163(match)\n", + " 1271 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:115(get_transform)\n", + " 3 0.001 0.000 0.001 0.000 {built-in method torch.cat}\n", + " 1001 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:221(__init__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/jit_utils.py:1()\n", + " 55 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3643()\n", + " 61 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(intersect1d)\n", + " 118 0.001 0.000 0.001 0.000 {built-in method builtins.compile}\n", + " 175 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:310(_to_rgba_no_colorcycle)\n", + " 60 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1531(__getitem__)\n", + " 2246 0.001 0.000 0.001 0.000 {built-in method matplotlib._path.affine_transform}\n", + " 3000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:8(_get_foreach_kernels_supported_devices)\n", + " 388 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:934(set_clip_path)\n", + " 288 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_normalizations.py:189(normalizer)\n", + " 1148 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2411(transform_non_affine)\n", + " 2 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5684(srange)\n", + " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:84(_get_value)\n", + " 60 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:829(_open_file_or_url)\n", + " 394 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:132(check_shape)\n", + " 16 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:292(draw)\n", + " 193 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3039(replace)\n", + " 12 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1871(apply_aspect)\n", + " 266/157 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1857(name)\n", + " 536 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:368(bounds)\n", + " 166 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:615(_from_any)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:1()\n", + " 546 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:178(sub)\n", + " 61 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:373(intersect1d)\n", + " 1000 0.001 0.000 0.001 0.000 {method 'reciprocal' of 'torch._C._TensorBase' objects}\n", + " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:97(_dispatch_sqrt)\n", + " 222 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:647(set_data)\n", + " 350 0.000 0.000 0.001 0.000 :1146(path_stats)\n", + " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/nn/utils/clip_grad.py:46()\n", + " 394 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:202(_update_values)\n", + " 435 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:814(set_size)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_notification.py:1()\n", + " 243 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1238(__init__)\n", + " 215/110 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1832(default_name)\n", + " 4731 0.001 0.000 0.001 0.000 {built-in method numpy.asanyarray}\n", + " 288 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_normalizations.py:190(normalizer_inner)\n", + " 2152 0.001 0.000 0.001 0.000 :380(__eq__)\n", + " 457 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:928(_json_decode)\n", + " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/grad_mode.py:82(__exit__)\n", + " 76 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:239(_get_xy_display)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/decomposition_table.py:1()\n", + " 7031 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1036(get_points)\n", + " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:309(_cuda_graph_capture_health_check)\n", + " 4008 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:946()\n", + " 42 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1615(__getitem__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_replacement.py:1()\n", + " 4 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/library.py:42(__init__)\n", + " 454 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:433(_tokenize)\n", + " 106 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:374(set_alpha)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_attachment.py:1()\n", + " 695 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:167(get_annotations)\n", + " 392 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2770(__str__)\n", + " 603 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:159(_type_convert)\n", + " 106 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(vstack)\n", + " 366 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3245(around)\n", + " 74 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1183(set_marker)\n", + " 38/18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4373(parseImpl)\n", + " 9401 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:293(axes)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImagePalette.py:1()\n", + " 213 0.000 0.000 0.001 0.000 :216(_lock_unlock_module)\n", + " 18351 0.001 0.000 0.001 0.000 {built-in method builtins.abs}\n", + " 70 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:257(rename_parameter)\n", + " 363 0.000 0.000 0.001 0.000 :778(spec_from_file_location)\n", + " 100 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2746(_revalidate)\n", + " 26 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:416(make_keyword_only)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2973(frombuffer)\n", + " 359 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:730(set_figure)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_configuration_override.py:1()\n", + " 684/532 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2377(_invalidate_internal)\n", + " 185 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:257(_recache)\n", + " 256/18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:414(visit)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:1()\n", + " 654 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:449(_field_init)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:1()\n", + " 67 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1089(reversed)\n", + " 178 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1612(transform_path_non_affine)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2896(new)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_location.py:1()\n", + " 25/6 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3816(streamline)\n", + " 490 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(concatenate)\n", + " 256/18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:420(generic_visit)\n", + " 582 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1782()\n", + " 5770 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1929(get_matrix)\n", + " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/grad_mode.py:73(__init__)\n", + " 1 0.001 0.001 0.001 0.001 {built-in method PIL._imaging.fill}\n", + " 62 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1352(__add__)\n", + " 338 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:437(set_transform)\n", + " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/nn/utils/clip_grad.py:61()\n", + " 518 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(ndim)\n", + " 35/5 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3675(streamline)\n", + " 3500 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:189()\n", + " 2000 0.001 0.000 0.001 0.000 {method 'to' of 'torch._C._TensorBase' objects}\n", + " 9073 0.001 0.000 0.001 0.000 {method 'group' of 're.Match' objects}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/registration.py:1()\n", + " 1464 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1203(set_y)\n", + " 74 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:241(_optimize_charset)\n", + " 726 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:367(_escape)\n", + " 26/14 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4108(parseImpl)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_common.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:1()\n", + " 1909 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1226(_is_dunder)\n", + " 3045 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3018()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_afm.py:1()\n", + " 3006 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:943()\n", + " 548 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:827(_set_new_attribute)\n", + " 350 0.000 0.000 0.001 0.000 :642(_classify_pyc)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_references.py:1()\n", + " 562 0.000 0.000 0.001 0.000 :1421(_path_importer_cache)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_stack.py:1()\n", + " 6758 0.001 0.000 0.001 0.000 {method 'endswith' of 'str' objects}\n", + " 1758 0.001 0.000 0.001 0.000 {method '__reduce_ex__' of 'object' objects}\n", + " 1027 0.001 0.000 0.001 0.000 {method 'detach' of 'torch._C._TensorBase' objects}\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/resume_execution.py:1()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_reference.py:1()\n", + " 2 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1369(make_dataclass)\n", + " 78 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:234(_adjust_location)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1()\n", + " 44 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:66(__set_name__)\n", + " 11 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2797()\n", + " 1012 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1337(_to_unmasked_float_array)\n", + " 67 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1108()\n", + " 78/4 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:909(_parseCache)\n", + " 790 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1107(_expand_aliases)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:648(make_html_tags)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:13(glob)\n", + " 2770 0.001 0.000 0.001 0.000 {method 'reshape' of 'numpy.ndarray' objects}\n", + " 122 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(unique)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:590(_makeTags)\n", + " 106 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:223(vstack)\n", + " 2714 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:185(is_consecutive)\n", + " 12 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:57()\n", + " 1768 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:451(get)\n", + " 350 0.000 0.000 0.001 0.000 :675(_validate_timestamp_pyc)\n", + " 34 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:60(_iglob)\n", + " 123 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2037(_signature_bound_method)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/__init__.py:1()\n", + " 32 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:409(to_rgba_array)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:1()\n", + " 6590 0.001 0.000 0.001 0.000 {built-in method builtins.iter}\n", + " 217 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:263(decorator)\n", + " 584 0.001 0.000 0.001 0.000 :100(acquire)\n", + " 63 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3783(__init__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:1()\n", + " 63 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:818(__init__)\n", + " 4 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:647(__init__)\n", + " 219 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:240(_check_color_like)\n", + " 1030 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1192(set_x)\n", + " 27/7 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4409(streamline)\n", + " 4 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3316(tick_params)\n", + " 336 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:670()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:400(ParserElement)\n", + " 30 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:845(_hash_add)\n", + " 244 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:33(seterr)\n", + " 75 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:237(_deepcopy_method)\n", + " 8 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1189(_set_lim)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:1()\n", + " 584 0.001 0.000 0.001 0.000 :125(release)\n", + " 9571 0.001 0.000 0.001 0.000 {method 'pop' of 'list' objects}\n", + " 2000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:122()\n", + " 50 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:342(update_from)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_graph.py:1()\n", + " 123 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:228(_recursive_repr)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_content.py:1()\n", + " 112 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1171(_set_artist_props)\n", + " 125 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1155(update_from)\n", + " 1050 0.000 0.000 0.001 0.000 :84(_unpack_uint32)\n", + " 530 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:203()\n", + " 20 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4889(parseImpl)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2398(__init__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:105(_glob1)\n", + " 123 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:573()\n", + " 900 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:264()\n", + " 151 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1001(set_alpha)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:1()\n", + " 1758 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copyreg.py:104(__newobj__)\n", + " 30 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:638(_hash_fn)\n", + " 244 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1904(scale_range)\n", + " 341 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:736(set_style)\n", + " 636 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:368(field)\n", + " 388 0.001 0.000 0.001 0.000 {method '__exit__' of '_io._IOBase' objects}\n", + " 106 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:470(cleaned)\n", + " 22 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4956(parseImpl)\n", + " 10 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2791(_generateDefaultName)\n", + " 195 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1110()\n", + " 371 0.000 0.000 0.001 0.000 :173(__exit__)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/__init__.py:1()\n", + " 3538/834 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:353(recursive_subclasses)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config.py:310()\n", + " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:39()\n", + " 120 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1181(set_position)\n", + " 2002 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:192(innermost_fn)\n", + " 4000 0.001 0.000 0.001 0.000 {built-in method torch._C._set_grad_enabled}\n", + " 95 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2257(p)\n", + " 122 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(ptp)\n", + " 378 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1504(__and__)\n", + " 629 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1324(is_math_text)\n", + " 356 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:776(_findclass)\n", + " 130 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(any)\n", + " 15 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2792(charsAsStr)\n", + " 1511 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2123(transform)\n", + " 2 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2294(__init__)\n", + " 122 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:138(unique)\n", + " 384 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:162(_fast_from_codes_and_verts)\n", + " 4000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:49()\n", + " 44 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:51(__init__)\n", + " 2198 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:65(wraps)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/utils.py:1()\n", + " 15957 0.001 0.000 0.001 0.000 {built-in method builtins.ord}\n", + " 44 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1345()\n", + " 38 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1586(__getitem__)\n", + " 36 0.000 0.000 0.001 0.000 :1408(_path_hooks)\n", + " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_contextlib.py:149(__new__)\n", + " 420 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2214()\n", + " 483 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:722(set_family)\n", + " 33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:364(_update_contains)\n", + " 16 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1126(_set_position)\n", + " 50 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:546()\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:8(adjust_bbox)\n", + " 9000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_jit_internal.py:1109(is_scripting)\n", + " 341 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:749(set_variant)\n", + " 7930 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2736(name)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/__init__.py:1()\n", + " 530 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:283(axis_aligned_extrema)\n", + " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:1()\n", + " 29 0.001 0.000 0.001 0.000 {method 'draw_glyphs_to_bitmap' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 366 0.001 0.000 0.001 0.000 {method 'round' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:542(_AxesBase)\n", + " 247 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:245(_collect_parameters)\n", + " 79 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3601(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/test_operators.py:1()\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:726(_get_transformed_path)\n", + " 42 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2984(parseImpl)\n", + " 5354 0.000 0.000 0.000 0.000 {method 'find' of 'str' objects}\n", + " 244 0.000 0.000 0.000 0.000 {method 'sum' of 'numpy.ndarray' objects}\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:299(_apply)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:1()\n", + " 108 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:982(set_color)\n", + " 502 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:396(_simple)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:440(_apply_tickdir)\n", + " 244 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(nonzero)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:1()\n", + " 2234 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1262(set_text)\n", + " 2399 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:247(match)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:1()\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:340(_broadcast_to)\n", + " 333 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1197(_set_markercolor)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:658(get_position)\n", + " 8634 0.000 0.000 0.000 0.000 {method 'rstrip' of 'str' objects}\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:497(_apply_tickdir)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1315(subplots_adjust)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2770(get_transformed_path_and_affine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_region.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes_impl.py:1()\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:473(__prepare__)\n", + " 2265 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:158(__len__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:175(_listdir)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:181(FigureBase)\n", + " 209 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1441(formatannotation)\n", + " 141 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1084(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_normalizations.py:1()\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:711(_transform_path)\n", + " 1213 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:450(get_transform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/make_functional.py:1()\n", + " 3031 0.000 0.000 0.000 0.000 :244(_verbose_message)\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1600(__getitem_inner__)\n", + " 225 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:455(__init__)\n", + " 233 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:314(_set_edgecolor)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:141(_iterdir)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2532(__init__)\n", + " 5610 0.000 0.000 0.000 0.000 {method 'pop' of 'dict' objects}\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2759(get_transformed_points_and_affine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:692()\n", + " 156/148 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:339(get_spine_transform)\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:33(parse)\n", + " 7100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2748(kind)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1138(set_linestyle)\n", + " 185 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:338(_set_artist_props)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:940(glob)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm_listed.py:1()\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2604(ptp)\n", + " 1599 0.000 0.000 0.000 0.000 {built-in method builtins.delattr}\n", + " 6000 0.000 0.000 0.000 0.000 {built-in method torch.is_grad_enabled}\n", + " 1554 0.000 0.000 0.000 0.000 :1032(__exit__)\n", + " 6495 0.000 0.000 0.000 0.000 {method '__contains__' of 'frozenset' objects}\n", + " 56 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:2081(getLogger)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:430(__enter__)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1054(set)\n", + " 1020 0.000 0.000 0.000 0.000 :405(parent)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:223(define_aliases)\n", + " 10/3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:14(__get__)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:323(_unique1d)\n", + " 466 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:75(_scale_dashes)\n", + " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/nn/utils/clip_grad.py:39()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/torch.py:1()\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:47(_sum)\n", + " 4798 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1563()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1()\n", + " 598 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2255(get_affine)\n", + " 150 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1833(frozen)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:980(__iter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:1()\n", + " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2333(any)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementPath.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/hooks.py:1()\n", + " 1554 0.000 0.000 0.000 0.000 :1028(__enter__)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:1603(_max_pool)\n", + " 92 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:788(frozen)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1053(set_color)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch.sin}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:1()\n", + " 6988 0.000 0.000 0.000 0.000 {method 'isidentifier' of 'str' objects}\n", + " 370 0.000 0.000 0.000 0.000 :71(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:1()\n", + " 1 0.000 0.000 0.000 0.000 {method 'unbind' of 'torch._C._TensorBase' objects}\n", + " 1 0.000 0.000 0.000 0.000 {method 'set_window_title' of '_macosx.FigureManager' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_exception.py:1()\n", + " 276 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:401(_tuple_str)\n", + " 3512 0.000 0.000 0.000 0.000 {built-in method builtins.issubclass}\n", + " 252 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:581(tiny)\n", + " 2000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:296()\n", + " 8/4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:981(__get__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_web_request.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/ElementTree.py:36(_get_py3_cls)\n", + " 56 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1327(getLogger)\n", + " 370 0.000 0.000 0.000 0.000 :198(cb)\n", + " 199 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:253(escape)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_web_response.py:1()\n", + " 3384 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:837()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_result_provenance.py:1()\n", + " 12/5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4092(streamline)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2973(re_match)\n", + " 6109 0.000 0.000 0.000 0.000 {method 'add' of 'set' objects}\n", + " 518 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3152(ndim)\n", + " 132 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:430(visit_Constant)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_text_helpers.py:1()\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:159(add)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_rectangle.py:1()\n", + " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:14(_get_fused_kernels_supported_devices)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2961(re)\n", + " 1 0.000 0.000 0.000 0.000 {method 'read' of '_io.TextIOWrapper' objects}\n", + " 260 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:282(_set_fillstyle)\n", + " 106 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(atleast_2d)\n", + " 1003 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:1002(__hash__)\n", + " 279 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2421(transform_path_non_affine)\n", + " 4001 0.000 0.000 0.000 0.000 {built-in method torch._C._get_privateuse1_backend_name}\n", + " 800 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:243(_keep_alive)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_stack_frame.py:1()\n", + " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:396(set_linestyle)\n", + " 432 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1289()\n", + " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:858(update_from_path)\n", + " 5533 0.000 0.000 0.000 0.000 {method 'values' of 'dict' objects}\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2536(_init)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1()\n", + " 94 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1095(set_fontsize)\n", + " 29 0.000 0.000 0.000 0.000 {method 'draw_text_image' of 'matplotlib.backends._backend_agg.RendererAgg' objects}\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:435(__exit__)\n", + " 148/39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1862(__str__)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2731(__init__)\n", + " 970 0.000 0.000 0.000 0.000 {method 'flatten' of 'numpy.ndarray' objects}\n", + " 388 0.000 0.000 0.000 0.000 :922(find_spec)\n", + " 564 0.000 0.000 0.000 0.000 {method 'sub' of 're.Pattern' objects}\n", + " 106 0.000 0.000 0.000 0.000 {built-in method matplotlib._path.cleanup_path}\n", + " 1400 0.000 0.000 0.000 0.000 :134()\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:379(wrapper)\n", + " 3937 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:700(get_size)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_fontconfig_pattern.py:57(_make_fontconfig_parser)\n", + " 494 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:683(_get_wrapped_text)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_logical_location.py:1()\n", + " 127 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:329(set_edgecolor)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:281(_ptp)\n", + " 64 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4349(__init__)\n", + " 804 0.000 0.000 0.000 0.000 {built-in method numpy.arange}\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:392(_fields_in_init_order)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_configuration.py:1()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2298(_init)\n", + " 460 0.000 0.000 0.000 0.000 :60(isabs)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method utcfromtimestamp}\n", + " 175/95 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:909(get_xaxis_transform)\n", + " 278 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2222(transform_non_affine)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:144(get_grid_positions)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_prims/executor.py:1()\n", + " 1799 0.000 0.000 0.000 0.000 {method 'replace' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:1()\n", + " 338 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1094(get_default_size)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_message.py:1()\n", + " 929 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2761(_set_dpi)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_version_control_details.py:1()\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1947(le)\n", + " 30 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(linspace)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_constrained_layout.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_graph_traversal.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_suppression.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:39(restore_bbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives.py:500(_register_ops)\n", + " 351 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:762(set_weight)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:732(set_transform)\n", + " 591 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:78(_is_private)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_edge.py:1()\n", + " 1279 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:284(tell)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:1()\n", + " 5650 0.000 0.000 0.000 0.000 {method 'strip' of 'str' objects}\n", + " 199 0.000 0.000 0.000 0.000 {method 'translate' of 'str' objects}\n", + " 512 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:341(intervaly)\n", + " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1624()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:18(_public_functions)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffTags.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:80(alphanums)\n", + " 917 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:755(_is_wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_location_relationship.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_sarif_log.py:1()\n", + " 341 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:788(set_stretch)\n", + " 3191 0.000 0.000 0.000 0.000 {method 'setdefault' of 'dict' objects}\n", + " 530 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:831(__setattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_edge_traversal.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:1()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:274(clear)\n", + " 1150 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1851(_str_equal)\n", + " 2873 0.000 0.000 0.000 0.000 {method 'rpartition' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_translation_metadata.py:1()\n", + " 2 0.000 0.000 0.000 0.000 {method 'clear' of 'matplotlib.backends._backend_agg.RendererAgg' objects}\n", + " 252 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:558(smallest_normal)\n", + " 67 0.000 0.000 0.000 0.000 {built-in method builtins.print}\n", + " 36 0.000 0.000 0.000 0.000 :1696(path_hook_for_FileFinder)\n", + " 25 0.000 0.000 0.000 0.000 {method 'draw_markers' of 'matplotlib.backends._backend_agg.RendererAgg' objects}\n", + " 3692 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:655(get_family)\n", + " 341 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:872(set_math_fontfamily)\n", + " 636/212 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2397()\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:1892(nonzero)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1062(close)\n", + " 166/90 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:989(get_yaxis_transform)\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1581(copy_with)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/function_base.py:23(linspace)\n", + " 636 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:287(__init__)\n", + " 72 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:945(_get_mixins_)\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:484(_parse_args)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:215(_get_draw_artists)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/html/entities.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:44(destroy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_reference.py:1()\n", + " 92 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:235(frozen)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1857(get_data_ratio)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:70(alphas)\n", + " 141 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1536()\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:242(x0)\n", + " 284 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:625(get_snap)\n", + " 105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:301(_remove_dups_flatten)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:785(set_subplotspec)\n", + " 3624 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:677(get_variant)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool_component_reference.py:1()\n", + " 3624 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:671(get_style)\n", + " 3624 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:692(get_stretch)\n", + " 29 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:353(_select_from)\n", + " 2785 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:841(get_visible)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:55(_chars_for_ranges)\n", + " 801 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1467(debug)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_run_automation_details.py:1()\n", + " 516 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:350(width)\n", + " 84 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:244(make_alias)\n", + " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1027(set_linespacing)\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:135(__init__)\n", + " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:81(atleast_2d)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_property_bag.py:1()\n", + " 3624 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:683(get_weight)\n", + " 61 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(zeros_like)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_relationship.py:1()\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:504(_from_parts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:169(destroy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_physical_location.py:1()\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1954(ge)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:434(_get_text1_transform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:155(MarkerStyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:787(PyExprCSEPass)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1221(set_markerfacecolor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_node.py:1()\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1526(__or__)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:868(__new__)\n", + " 188 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1246(set_verticalalignment)\n", + " 1134 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1345(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:805(copy)\n", + " 4005 0.000 0.000 0.000 0.000 {method 'values' of 'collections.OrderedDict' objects}\n", + " 83 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:361(decorator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/codegen.py:1()\n", + " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:919(set_capstyle)\n", + " 572 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:820(_set_qualname)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:844(_create_)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1416(ArtistInspector)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:14(install_config_module)\n", + " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:989(set_joinstyle)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:937(get_xaxis_text1_transform)\n", + " 2144 0.000 0.000 0.000 0.000 :1103(__eq__)\n", + " 274 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1043(set_visible)\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:132(geterr)\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/textwrap.py:470(indent)\n", + " 1 0.000 0.000 0.000 0.000 {function FigureManagerMac.destroy at 0x13eb8d580}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/relativedelta.py:1()\n", + " 4000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_utils.py:841(is_compiling)\n", + " 798 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:966()\n", + " 3635 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1809(get_affine)\n", + " 4 0.000 0.000 0.000 0.000 {built-in method torch.zeros}\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:316(delete_parameter)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2638(_update_offset_text_position)\n", + " 350 0.000 0.000 0.000 0.000 :599(_check_name_wrapper)\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1364()\n", + " 755 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2308(get_matrix)\n", + " 388 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/_distutils_hack/__init__.py:89(find_spec)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:491(_get_text1_transform)\n", + " 628 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:47(_is_dunder)\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:108(_clip_dep_invoke_with_casting)\n", + " 2598 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:740(dot)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_axes.py:104(set_title)\n", + " 1000 0.000 0.000 0.000 0.000 {built-in method torch.is_complex}\n", + " 2836 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:706(get_file)\n", + " 127 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:381(set_linewidth)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_deprecation.py:20(decorator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:294()\n", + " 2022 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2758(_get_dpi)\n", + " 106 0.000 0.000 0.000 0.000 {built-in method matplotlib._path.update_path_extents}\n", + " 593 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:750(__delattr__)\n", + " 557 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:252(y0)\n", + " 474 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:37(_is_descriptor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_multiformat_message_string.py:1()\n", + " 631 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:509(_init_param)\n", + " 1182 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:152()\n", + " 372 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:181(__init__)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1017(get_yaxis_text1_transform)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4084(__init__)\n", + " 494 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:284(get_rotation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:1()\n", + " 3644 0.000 0.000 0.000 0.000 {method 'lower' of 'str' objects}\n", + " 1292 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:670(_set)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:437(_get_text2_transform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:761(SetVariable)\n", + " 1797 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:425()\n", + " 2834 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:864(get_math_fontfamily)\n", + " 39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:56(parse_parts)\n", + " 600/586 0.000 0.000 0.000 0.000 {built-in method builtins.repr}\n", + " 3108 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:107(_copy_immutable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:1()\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:494(_get_text2_transform)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1630(make_norm_from_scale)\n", + " 413 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:356(height)\n", + " 127 0.000 0.000 0.000 0.000 {method 'any' of 'numpy.ndarray' objects}\n", + " 306 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:136(__new__)\n", + " 162 0.000 0.000 0.000 0.000 :71(join)\n", + " 1768 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:912()\n", + " 488 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1937(closeto)\n", + " 740 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1632(__eq__)\n", + " 769 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:192(__get__)\n", + " 385 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:734(get_path)\n", + " 1458 0.000 0.000 0.000 0.000 {method 'extend' of 'list' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:129()\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:963(get_xaxis_text2_transform)\n", + " 184 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2063(_signature_is_builtin)\n", + " 25 0.000 0.000 0.000 0.000 {method 'numpy' of 'torch._C._TensorBase' objects}\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:539(_get_data_path)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/library.py:65(define)\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:77(zeros_like)\n", + " 469 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:327(__set_name__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1814(Parser)\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3903(_generateDefaultName)\n", + " 6/3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:22(visit)\n", + " 14/12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1074(get_position)\n", + " 8 0.000 0.000 0.000 0.000 {built-in method torch._C.define}\n", + " 137 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:416(_broadcast_shape)\n", + " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2668(__init__)\n", + " 676 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:969(set_foreground)\n", + " 488 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:103(_clip_dep_is_byte_swapped)\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:260(contextmanager)\n", + " 86 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1112(set_zorder)\n", + " 152 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(result_type)\n", + " 2937 0.000 0.000 0.000 0.000 {method 'get' of 'mappingproxy' objects}\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1043(get_yaxis_text2_transform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_color_data.py:1()\n", + " 188 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:997(set_horizontalalignment)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch.cos}\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5368(__init__)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/textwrap.py:419(dedent)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3588(set_xlim)\n", + " 1666 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1758()\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:331(wrapper)\n", + " 1101 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:646(_is_classvar)\n", + " 176 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:82(opengroup)\n", + " 189 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:222(__init__)\n", + " 1258 0.000 0.000 0.000 0.000 {method 'count' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_fix.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:133()\n", + " 322 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:332(intervalx)\n", + " 2002 0.000 0.000 0.000 0.000 {built-in method torch._C._dynamo.eval_frame.set_eval_frame}\n", + " 1001 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:205(check)\n", + " 1184 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:933(get_rasterized)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:982()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1946(get_width_height)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4283(get_children)\n", + " 76 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:91()\n", + " 82 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2266(__init__)\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1324(__init_subclass__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:63()\n", + " 1071 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:109(__init__)\n", + " 3650 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:182(_deepcopy_atomic)\n", + " 591 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:58(_is_sunder)\n", + " 288 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:897(set_alpha)\n", + " 80 0.000 0.000 0.000 0.000 {method 'copy' of 'dict' objects}\n", + " 959 0.000 0.000 0.000 0.000 {method 'tolist' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:1()\n", + " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:287(deco_unary_ufunc)\n", + " 1785 0.000 0.000 0.000 0.000 {built-in method posix.fspath}\n", + " 387 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/textwrap.py:482(prefixed_lines)\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2915(__init__)\n", + " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:518(decorating_function)\n", + " 1101 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:654(_is_initvar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/linalg.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffTags.py:419(_populate)\n", + " 342 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/ma/core.py:587(filled)\n", + " 90 0.000 0.000 0.000 0.000 {built-in method builtins.sum}\n", + " 170 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:89(__getitem__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2858(__init__)\n", + " 252 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:476(__new__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1()\n", + " 38 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:65(deco_binary_ufunc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_special_locations.py:1()\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:191(_create_closed)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mlab.py:1()\n", + " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:559(_axis_map)\n", + " 2508 0.000 0.000 0.000 0.000 {built-in method _imp.release_lock}\n", + " 2508 0.000 0.000 0.000 0.000 {built-in method _imp.acquire_lock}\n", + " 2002 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:205(enable_dynamic)\n", + " 66 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:130(clone)\n", + " 265 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:410()\n", + " 1000 0.000 0.000 0.000 0.000 {built-in method torch._C._are_functorch_transforms_active}\n", + " 303 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1297(_val_or_rc)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1974(__init__)\n", + " 145 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:894(_parse_flags)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1123(set_linewidth)\n", + " 348/264 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1351(__hash__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset8.py:1()\n", + " 390 0.000 0.000 0.000 0.000 :357(__init__)\n", + " 309 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/shape_base.py:608(_column_stack_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/isoparser.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GifImagePlugin.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:14(delimited_list)\n", + " 36 0.000 0.000 0.000 0.000 :1559(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2360(Figure)\n", + " 36 0.000 0.000 0.000 0.000 :1684()\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1009(_find_new_)\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:213(__getattr__)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:354(get_transform)\n", + " 2000 0.000 0.000 0.000 0.000 {method '__exit__' of 'torch._C.DisableTorchFunctionSubclass' objects}\n", + " 127 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:55(_any)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:61(JitScalarType)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2034(set_params)\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/library.py:86(impl)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:1()\n", + " 354 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1945(_signature_get_user_defined_method)\n", + " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:744(_get_axis_name)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1214(set_rotation)\n", + " 36 0.000 0.000 0.000 0.000 :64(__init__)\n", + " 84 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3904()\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:183(__init__)\n", + " 125 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:453(set_capstyle)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:327(max)\n", + " 1666 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:211(vertices)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1437(__mul__)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1211(set_markeredgecolor)\n", + " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/backends/cuda/__init__.py:29(is_built)\n", + " 10 0.000 0.000 0.000 0.000 :1239(exec_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:737(_get_scale_docs)\n", + " 399 0.000 0.000 0.000 0.000 :180(_path_isabs)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1515(_set_title_offset_trans)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/isoparser.py:42(isoparser)\n", + " 228 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:33(_get_dash_pattern)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:100(OutputGraphState)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1407(set_dash_capstyle)\n", + " 192/186 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:434(_get_literal_prefix)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:1()\n", + " 730 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:79(groups)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:1345()\n", + " 1000 0.000 0.000 0.000 0.000 {method 'conj' of 'torch._C._TensorBase' objects}\n", + " 170 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:953(copy)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:819(set_figure)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2315(__init__)\n", + " 2 0.000 0.000 0.000 0.000 :412(realpath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:235()\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2485(get_ticks_position)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:213(_get_version)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1231(set_markerfacecoloralt)\n", + " 744 0.000 0.000 0.000 0.000 {built-in method _thread.allocate_lock}\n", + " 10 0.000 0.000 0.000 0.000 {built-in method _imp.exec_dynamic}\n", + " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:61(_module_dir)\n", + " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/__init__.py:139(_tensor_or_tensors_to_tuple)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/abc.py:1()\n", + " 1938 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2824(_amin_dispatcher)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:457()\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2516(_process_unit_info)\n", + " 2000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/jit/__init__.py:124(annotate)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:215(connect)\n", + " 1962 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2698(_amax_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/hooks.py:6(Hooks)\n", + " 472 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2678(get_matrix)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1()\n", + " 14 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5585(__init__)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2269(setter)\n", + " 200 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:164(_copy_docstring_and_deprecators)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:1()\n", + " 860 0.000 0.000 0.000 0.000 {method 'rfind' of 'str' objects}\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/deprecated.py:41(setup_docs)\n", + " 48 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:57(_strip_init_py)\n", + " 148 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1267(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/fnmatch.py:48(filter)\n", + " 306/282 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:159(__init__)\n", + " 1233 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:78()\n", + " 152 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:565(__getitem__)\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:187(finalize)\n", + " 107 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:935(_check_for_existing_members_)\n", + " 151 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2075(_signature_is_functionlike)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1065(set_drawstyle)\n", + " 2862 0.000 0.000 0.000 0.000 {built-in method math.factorial}\n", + " 499 0.000 0.000 0.000 0.000 :67(_relax_case)\n", + " 2000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:141(graph_break)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:548()\n", + " 698 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:255(iter_fields)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:962(_get_markerfacecolor)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:514(_get_config_or_cache_dir)\n", + " 18 0.000 0.000 0.000 0.000 {built-in method _functools.reduce}\n", + " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:493(set_hatch)\n", + " 118 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:301(set_antialiased)\n", + " 1 0.000 0.000 0.000 0.000 /Users/vrajpandya/repo/intern_challenge/placement.py:210()\n", + " 582 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:69(_is_internal_class)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:595(OrtBackend)\n", + " 495 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2646(get_matrix)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/texmanager.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:1()\n", + " 415 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:207(_arrays_for_stack_dispatcher)\n", + " 72 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:981(_find_data_type_)\n", + " 2 0.000 0.000 0.000 0.000 :421(_joinrealpath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/shlex.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:304(GPS)\n", + " 247 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1872(inverted)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:236()\n", + " 2002 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:188(nothing)\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:452(_no_nep50_warning)\n", + " 633 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:437(_field_assign)\n", + " 131 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1915(__eq__)\n", + " 12/2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1503(makeOptionalList)\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:408(tokenize)\n", + " 98 0.000 0.000 0.000 0.000 {built-in method _abc._abc_init}\n", + " 74 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1041(set_fontfamily)\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:384(_mk_bitmap)\n", + " 351 0.000 0.000 0.000 0.000 :48(_new_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend.py:342(Legend)\n", + " 632 0.000 0.000 0.000 0.000 :41(_get_sep)\n", + " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:562()\n", + " 170 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:771(__copy__)\n", + " 537 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:180(validator)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1359(set_dash_joinstyle)\n", + " 68 0.000 0.000 0.000 0.000 {method 'clear' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:744()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:1()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3822(set_ylim)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2202(_get_ticks_position)\n", + " 34 0.000 0.000 0.000 0.000 :229(expanduser)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:43(parse)\n", + " 60 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1317()\n", + " 1000 0.000 0.000 0.000 0.000 {built-in method math.sqrt}\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2013(_validate_steps)\n", + " 121 0.000 0.000 0.000 0.000 :319(decode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1646(convert_class)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/backends/registry.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:344(Slider)\n", + " 1168 0.000 0.000 0.000 0.000 {method '__exit__' of '_thread.lock' objects}\n", + " 108 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:287(_deduplicate)\n", + " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:135(get_patch_transform)\n", + " 1038 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:767(rotation_point)\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2324(blended_transform_factory)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:785(_set_tickdown)\n", + " 1101 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:660(_is_kw_only)\n", + " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:473(set_joinstyle)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:273(__bool__)\n", + " 1338 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2119(get_matrix)\n", + " 183 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:668(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:281(_make_selector)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:238(Dvi)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1423(set_solid_capstyle)\n", + " 1128 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:904(get_text)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:1()\n", + " 801 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1734(isEnabledFor)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1663(__call__)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:592()\n", + " 58 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:479(lru_cache)\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1378(_fixupParents)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_fontconfig_pattern.py:59(comma_separated)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:349(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:536(OrtBackendOptions)\n", + " 42 0.000 0.000 0.000 0.000 {method 'sort' of 'list' objects}\n", + " 60 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2752(replace)\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:45(allow_rasterization)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_color_data.py:989()\n", + " 215 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:19(is_public_function)\n", + " 58 0.000 0.000 0.000 0.000 :778(__contains__)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:49(make_function_id_set)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:415(cycler)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:467(__getitem__)\n", + " 378 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:568(isstring)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1375(set_solid_joinstyle)\n", + " 175 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:465(_get_charset_prefix)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:561(_setResultsName)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2941(_wait_cursor_for_draw_cm)\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1922(__init__)\n", + " 512 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:868(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:260(compile_pattern)\n", + " 137 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:538()\n", + " 1000 0.000 0.000 0.000 0.000 {built-in method torch._C._has_torch_function}\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:76(set_base)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3086(ArrowStyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:1()\n", + " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1317(set_usetex)\n", + " 146 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffTags.py:26(__new__)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:765(_set_tickleft)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:171(GuardBuilder)\n", + " 1184 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:960(get_agg_filter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:588(matplotlib_fname)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1700(update_units)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:101(VariableTracker)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1392(__radd__)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:482(anchored)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:1()\n", + " 587 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:76(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/fnmatch.py:38(_compile_pattern)\n", + " 522 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:298(axes)\n", + " 1050 0.000 0.000 0.000 0.000 {built-in method from_bytes}\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:687(Literal)\n", + " 64 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:536(__str__)\n", + " 94 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(copyto)\n", + " 1001 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:751(__init__)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:505(set_pickradius)\n", + " 1 0.000 0.000 0.000 0.000 {method 'throw' of 'generator' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset12.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/proj3d.py:1()\n", + " 2 0.000 0.000 0.000 0.000 {method 'set_cursor' of '_macosx.FigureCanvas' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext_data.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2802(NavigationToolbar2)\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1615(raise_if_exceeds)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:2533(SpanSelector)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/patcher.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:213(OutputGraph)\n", + " 16/8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:164(get_converter)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4147(_generateDefaultName)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:1()\n", + " 17 0.000 0.000 0.000 0.000 {built-in method torch._C.impl}\n", + " 999 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:283(get_loc)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3005(set_size_inches)\n", + " 388 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:914(set_antialiased)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3497(get_xbound)\n", + " 440 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:246(_get_multialignment)\n", + " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:967(__init__)\n", + " 156/148 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:202(_ensure_position_is_set)\n", + " 1236 0.000 0.000 0.000 0.000 {built-in method _thread.get_ident}\n", + " 1000 0.000 0.000 0.000 0.000 {method 'numel' of 'torch._C._TensorBase' objects}\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2271()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2240(LogLocator)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1189(reversed)\n", + " 23 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4948(__init__)\n", + " 1047 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:193(_reshape_dispatcher)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:474(_cycler)\n", + " 316 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:878(_convert_validator_spec)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:84(TransformNode)\n", + " 40 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1149(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/optimizer.py:1()\n", + " 32 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:497()\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:220(decorate)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:75(_apply)\n", + " 68 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:42(get_hinting_flag)\n", + " 1056 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:223(codes)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1069(_update_transScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:615(RangeSlider)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:27(Collection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:1()\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1820(__init_subclass__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1341(TextBox)\n", + " 37 0.000 0.000 0.000 0.000 :164(_path_isdir)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:609(gen_candidates)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:450(DebugActions)\n", + " 1016 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1331(get_usetex)\n", + " 754 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:396()\n", + " 90 0.000 0.000 0.000 0.000 :878(__iter__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1181(_gen_axes_patch)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3547(get_xlim)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_result.py:28(Result)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:54(literal_eval)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:981(resolve)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:242(__set_name__)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5590(__add__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:118(pyparsing_unicode)\n", + " 32 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:667(__init__)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1719(set)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:38(Axis)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:43(Instruction)\n", + " 189 0.000 0.000 0.000 0.000 {built-in method _sre.compile}\n", + " 1001 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:754(__enter__)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:765(__truediv__)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:427(getArtifactLogger)\n", + " 988 0.000 0.000 0.000 0.000 {built-in method math.cos}\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4148()\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1447(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ndarray.py:174(ndarray)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:779(_set_tickup)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2282(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:130(filterwarnings)\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:267(onnx_symbolic)\n", + " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:533(copy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:716(ContourSet)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:229(_connect_picklable)\n", + " 292 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:239(__iter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageOps.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:596(Axis)\n", + " 120/78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1637(__hash__)\n", + " 388 0.000 0.000 0.000 0.000 {built-in method _imp.find_frozen}\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:59(FunctionIdSet)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/diagnostics.py:1()\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:206(_from_iter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_invocation.py:17(Invocation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:101(resize)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:530(_make_child)\n", + " 1876 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:847()\n", + " 42 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:546(__fspath__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:873(_set_lim_and_transforms)\n", + " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:270(get_patch_transform)\n", + " 99 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builtin.py:396(__init__)\n", + " 90 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2218()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:294(HammerAxes)\n", + " 984 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3031(parameters)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:552(get_configdir)\n", + " 1017 0.000 0.000 0.000 0.000 {built-in method math.radians}\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:24(_prevent_rasterization)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:359(LightSource)\n", + " 1105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2214(cast)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:52(__init__)\n", + " 12 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(cumsum)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1017()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3750(get_ybound)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:771(_set_tickright)\n", + " 794 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1338()\n", + " 189 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:954(fix_flags)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_util.py:1()\n", + " 70 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:775(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:246(AitoffAxes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/nn_module.py:1()\n", + " 468 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:348()\n", + " 164 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:140(validate_bool)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:523(shrunk_to_aspect)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3738(LassoSelector)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:412(get_subplot_params)\n", + " 2075 0.000 0.000 0.000 0.000 {built-in method builtins.chr}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1518(_cached_realpath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:72(ContourLabeler)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:413(LambertAxes)\n", + " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:132(__getstate__)\n", + " 244 0.000 0.000 0.000 0.000 {method 'nonzero' of 'numpy.ndarray' objects}\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1966(clear)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:341(MollweideAxes)\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:71(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/common.py:422()\n", + " 42 0.000 0.000 0.000 0.000 :771(get)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:4054(FancyArrowPatch)\n", + " 54 0.000 0.000 0.000 0.000 :674(__getitem__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:59(_convert_to_version)\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:386()\n", + " 74 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:214(_compile_charset)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1908(_set_device_pixel_ratio)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:909(home)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1031(get_hatch_path)\n", + " 39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2981(_generateDefaultName)\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:207(_apply_tickdir)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3800(get_ylim)\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:431(__iadd__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2106(IdentityTransform)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1241(set_markeredgewidth)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:1061()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1330(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1307(rruleset)\n", + " 32 0.000 0.000 0.000 0.000 :941(update)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:299(set_position)\n", + " 1004 0.000 0.000 0.000 0.000 {built-in method torch._C._has_torch_function_unary}\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1632(get_minor_ticks)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trifinder.py:1()\n", + " 350 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/textwrap.py:479(predicate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2338(CompositeGenericTransform)\n", + " 988 0.000 0.000 0.000 0.000 {built-in method math.sin}\n", + " 353 0.000 0.000 0.000 0.000 :1097(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:58(_timelex)\n", + " 385 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:734(unit_rectangle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:78()\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4424()\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:150(ones)\n", + " 3 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(inv)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:110(_weak_or_strong_ref)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:399(_patch_step_function)\n", + " 170 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:677(__init__)\n", + " 264 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:432()\n", + " 21/20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1640(__repr__)\n", + " 790 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1145(score_style)\n", + " 318 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:781(__iter__)\n", + " 754 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1101()\n", + " 61 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(empty_like)\n", + " 790 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1209(score_size)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1633(nonsingular)\n", + " 388 0.000 0.000 0.000 0.000 :748(find_spec)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/fx/passes/fake_tensor_prop.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:97()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:43(Tick)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2264()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/BmpImagePlugin.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:314(_POERules)\n", + " 176 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:429()\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:734(_get_shared_axes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_prims/context.py:1()\n", + " 507 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:166(__setitem__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:32(GuardFn)\n", + " 24/23 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1475(__repr__)\n", + " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1609()\n", + " 192 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1773(__array__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1989(_switch_canvas_and_return_print_method)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:216(Line2D)\n", + " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:137(__setstate__)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1043()\n", + " 1029 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2740(default)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:469(inv)\n", + " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1000(set_linewidth)\n", + " 134 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1862(_str_lower_equal)\n", + " 46 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:110(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1679(_make_norm_from_scale)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1078(putchunk)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:353(profile_hook_step)\n", + " 492 0.000 0.000 0.000 0.000 {built-in method builtins.divmod}\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:64()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/make_functional.py:254(FunctionalModuleWithBuffers)\n", + " 860 0.000 0.000 0.000 0.000 {built-in method sys.getrecursionlimit}\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1043(_translate_tick_params)\n", + " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:218(_vhstack_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3807(FancyBboxPatch)\n", + " 371 0.000 0.000 0.000 0.000 :165(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1284(__instancecheck__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1773(__class_getitem__)\n", + " 385 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:542()\n", + " 67/55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:224(_type_repr)\n", + " 22 0.000 0.000 0.000 0.000 :162(find_spec)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3814(PolygonSelector)\n", + " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:340(_optimizer_step_code)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2293(BoxStyle)\n", + " 668 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2427(_all_dispatcher)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:651(cache)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2011(__init_subclass__)\n", + " 663 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:892(get_clip_path)\n", + " 326 0.000 0.000 0.000 0.000 {built-in method sys.intern}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:1()\n", + " 732 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3241(_around_dispatcher)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1547(__subclasscheck__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:29(Cursors)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1573(get_matrix)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:670(Rectangle)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2523(cumsum)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:745(_draw_disabled)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:1()\n", + " 494 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:601(get_wrap)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3569(_validate_converted_limits)\n", + " 494 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:292(get_transform_rotates_text)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2243(mpl_connect)\n", + " 790 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1162(score_variant)\n", + " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:344(__len__)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1256(set_markersize)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset17.py:1()\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1737(__call__)\n", + " 1001 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:757(__exit__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1259(Arrow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2658(ConnectionStyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_reductions_impl.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/mps/__init__.py:42(manual_seed)\n", + " 125 0.000 0.000 0.000 0.000 {method '__deepcopy__' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:128()\n", + " 67 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:191(__getitem__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:199(VariableBuilder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:85(identchars)\n", + " 58 0.000 0.000 0.000 0.000 {built-in method builtins.round}\n", + " 105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1443(repl)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/linalg.py:33(linalg_errors)\n", + " 51 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:394()\n", + " 488 0.000 0.000 0.000 0.000 {built-in method math.log10}\n", + " 189 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:73(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset7.py:1()\n", + " 262 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:124()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:571(get_cachedir)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:4394(ConnectionPatch)\n", + " 244 0.000 0.000 0.000 0.000 {built-in method numpy.seterrobj}\n", + " 530 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:242(degree)\n", + " 154 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:757(preParse)\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:195(_set_labelrotation)\n", + " 440 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:317(get_rotation_mode)\n", + " 222 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1329()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:1()\n", + " 121 0.000 0.000 0.000 0.000 {built-in method _codecs.utf_8_decode}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset14.py:1()\n", + " 23 0.000 0.000 0.000 0.000 {built-in method posix.lstat}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/mps/__init__.py:15(_get_default_mps_generator)\n", + " 52 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3819()\n", + " 790 0.000 0.000 0.000 0.000 {built-in method builtins.vars}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_legacy.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1212(AnnotationBbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:26(GridSpecBase)\n", + " 341 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:844(set_file)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._mps_get_default_generator}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:116(UserErrorType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:211(BboxBase)\n", + " 518 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1347(get_parse_math)\n", + " 118 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:310(ismethoddescriptor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:29(format_list)\n", + " 170 0.000 0.000 0.000 0.000 {method 'astype' of 'numpy.ndarray' objects}\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:125()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:578(_ReducedHCT_Element)\n", + " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:111(set_)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:297(get_joinstyle)\n", + " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:81(in_base)\n", + " 1 0.000 0.000 0.000 0.000 {method 'close' of '_io.BufferedRandom' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:42(CompatibilityFiles)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:24(BaseListVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:430(OrtExecutionInfoPerSession)\n", + " 57 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:444(_uniq)\n", + " 4 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(diff)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:348(SymmetricalLogTransform)\n", + " 248 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2271()\n", + " 848 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1367(depth)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:189(BezierSegment)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1046()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1949(Cursor)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2786(get_affine)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:955(x0)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm.py:1()\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1041(set_antialiased)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:72()\n", + " 2 0.000 0.000 0.000 0.000 {built-in method posix.scandir}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:99(identbodychars)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:186(__init__)\n", + " 822 0.000 0.000 0.000 0.000 {method '__subclasses__' of 'type' objects}\n", + " 242 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3614()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/random.py:1()\n", + " 42 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:329(find_cookie)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:397()\n", + " 222 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1335()\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1100(set_gapcolor)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1377(expanduser)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1685(_safe_first_finite)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:60(SideEffects)\n", + " 549 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:884(get_clip_on)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3056(ToolHandles)\n", + " 346 0.000 0.000 0.000 0.000 {method 'ravel' of 'numpy.ndarray' objects}\n", + " 488 0.000 0.000 0.000 0.000 {built-in method numpy.geterrobj}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:1428(TrackedFake)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:430(ImageFileDirectory_v2)\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1234()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:878(CheckFunctionManager)\n", + " 123 0.000 0.000 0.000 0.000 :146(update_abstractmethods)\n", + " 557 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:888(get_clip_box)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4758(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1090(TimerBase)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3063(__hash__)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1867(_set_formatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1034(NonUniformImage)\n", + " 184 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:505(isbuiltin)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/comptime.py:1()\n", + " 183 0.000 0.000 0.000 0.000 {method 'sort' of 'numpy.ndarray' objects}\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:657(stem)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1052()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:641(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/table.py:37(Cell)\n", + " 518 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3148(_ndim_dispatcher)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:298(set_rotation_mode)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:992(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:985(intervalx)\n", + " 388 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1004(set_url)\n", + " 452 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:611(get_gid)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/fx/_compatibility.py:24(mark_not_back_compat)\n", + " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:108(get)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1096(write)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1008(stat)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:513(format)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:24(Path)\n", + " 694 0.000 0.000 0.000 0.000 {method 'copy' of 'list' objects}\n", + " 490 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:152(concatenate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:134(Diagnostics)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:2945(ToolLineHandles)\n", + " 367 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:426(_get_iscased)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3727(_setResultsName)\n", + " 648 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:754()\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:137(_max_pool)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:152(GraphArg)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PpmImagePlugin.py:1()\n", + " 284 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:939(set_dashes)\n", + " 899 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:589()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_casting_dicts.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:208(OffsetBox)\n", + " 500 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1128(sticky_edges)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:21(ActivationWrapper)\n", + " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:182(_validate_hatch_pattern)\n", + " 467 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:849(get_in_layout)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_reductions_impl.py:24(_deco_axis_expand)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:550(set_markevery)\n", + " 568 0.000 0.000 0.000 0.000 {method 'keys' of 'dict' objects}\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:523(_format_parsed_parts)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:586(set_clip_box)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:56(draw_idle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/constant.py:1()\n", + " 88 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:146(__init__)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:46(__new__)\n", + " 14 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/fft.py:11(upcast)\n", + " 99 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:66(__call__)\n", + " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:346(__init__)\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:200(__setitem__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1671(FigureCanvasBase)\n", + " 292 0.000 0.000 0.000 0.000 {method 'find' of 'bytearray' objects}\n", + " 222 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2264()\n", + " 350 0.000 0.000 0.000 0.000 {built-in method _imp._fix_co_filename}\n", + " 24/23 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1481()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:39(RuntimeTypeCheckState)\n", + " 392 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:723(get_path_effects)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/config.py:1()\n", + " 344 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:801()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:238(reload_library)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1245(is_dir)\n", + " 169 0.000 0.000 0.000 0.000 {built-in method numpy.empty}\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:135(__init__)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copyreg.py:113(_slotnames)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5716()\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:74(from_sarif)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1621()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2856(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:27(Patch)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:125(_unpack_tuple)\n", + " 730 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:57(_no_op_decorator)\n", + " 404 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:254(should_simplify)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/function_base.py:1320(diff)\n", + " 374 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:541(locator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/testing.py:1()\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4879(__init__)\n", + " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:321(set_antialiased)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:582(get_data_path)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:307(_class_escape)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:569(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:528(set_results_name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/abc.py:56(Traversable)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:300(get_capstyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:65(_single_shot_timer)\n", + " 404 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:242(simplify_threshold)\n", + " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1012(set_snap)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5711()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:141(InstructionTranslatorGraphState)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset16.py:1()\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:882(wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1788()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:4182(Lasso)\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:52(checkcache)\n", + " 187 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:31(_combine_flags)\n", + " 22 0.000 0.000 0.000 0.000 :370(_get_module_info)\n", + " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:664(get_sketch_params)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:294(__init__)\n", + " 99 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:331(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:157(Transpose)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:336(_validate_cmap)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:936(get_markeredgecolor)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:227(__getitem__)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:458(format_frame_summary)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:1()\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:959(reset_cache)\n", + " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:466(__enter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:27(JoinStyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_prims/context.py:82(TorchRefsMode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/make_functional.py:310(FunctionalModule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:198(update_user_library)\n", + " 437 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1243(name)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1697(Norm)\n", + " 453 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:234(__init__)\n", + " 2 0.000 0.000 0.000 0.000 :27(isfile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:1()\n", + " 362 0.000 0.000 0.000 0.000 :413(has_location)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:97(LoggingTensorHandler)\n", + " 95 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2205(parse_name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:490(enter_context)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1922(Arc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1969()\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:236(set_locs)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/resume_execution.py:312(ContinueExecutionCache)\n", + " 131 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1711(set_whitespace_chars)\n", + " 102 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:24(__init__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:546(__exit__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:441(_validate_papersize)\n", + " 156 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1924(__hash__)\n", + " 54 0.000 0.000 0.000 0.000 :756(encode)\n", + " 19 0.000 0.000 0.000 0.000 {method 'write' of '_io.BufferedRandom' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1339(LocationEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4757(_MultipleMatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/quiver.py:443(Quiver)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:965(x1)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:193(FrameStateSizeEntry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1615(Annotation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:996(CheckButtons)\n", + " 1 0.000 0.000 0.000 0.000 {method 'float' of 'torch._C._TensorBase' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:1()\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:362(size)\n", + " 350 0.000 0.000 0.000 0.000 :1122(get_filename)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1111(mkdir)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:67(new_class)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset11.py:92(_apply)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:1()\n", + " 59 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:228(_acquireLock)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:265(getuntil)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:119(CapStyle)\n", + " 388 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:807(restore)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:153(RendererBase)\n", + " 288 0.000 0.000 0.000 0.000 :1565()\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:877(_make_child_relpath)\n", + " 325 0.000 0.000 0.000 0.000 {method 'values' of 'mappingproxy' objects}\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:273(validate_color_or_auto)\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:462(_validate_linestyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1314(FancyArrow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/win.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:340()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:786(_add_axes_internal)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:349(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1827(set_major_formatter)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:960(y0)\n", + " 286 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:552(formatter)\n", + " 262 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:930(set_clip_rectangle)\n", + " 2 0.000 0.000 0.000 0.000 {built-in method torch.zeros_like}\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset11.py:349(_interpolate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_binary_ufuncs_impl.py:1()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3123(set_axisbelow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool_component.py:19(ToolComponent)\n", + " 50 0.000 0.000 0.000 0.000 {method 'remove' of 'list' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/resume_execution.py:33(ReenterWith)\n", + " 18 0.000 0.000 0.000 0.000 {method 'findall' of 're.Pattern' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_run.py:30(Run)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs_impl.py:1()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:754(set_clip_box)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4430(_generateDefaultName)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:440()\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/random.py:39(deco_stream)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:222(__init__)\n", + " 183 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:630()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:2166(InliningInstructionTranslator)\n", + " 51 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:239(splitroot)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:18(PolarTransform)\n", + " 38 0.000 0.000 0.000 0.000 :309(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:111()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:13(Level)\n", + " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:357(validate_fontsize)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:123(_SymbolicFunctionGroup)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1701(__init__)\n", + " 150 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1232(__reduce_ex__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1719(__init__)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:692(max)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:177(Resampling)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1401(MouseButton)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow.py:16(ThreadFlow)\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2107(_clip_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:14(Spine)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/function.py:307(__init__)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:1068(_interpolate_helper)\n", + " 172 0.000 0.000 0.000 0.000 :835(__iter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:247(TorchHigherOrderOperatorVariable)\n", + " 150 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:898(get_position)\n", + " 2 0.000 0.000 0.000 0.000 :110(register)\n", + " 201 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:59(func)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:753()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:64(OverrideDict)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset15.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:343(Interop)\n", + " 217 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:234(parse_args)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:226(set_prop_cycle)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._get_operation_overload}\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3461(export)\n", + " 350 0.000 0.000 0.000 0.000 :931(create_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3596(ParseExpression)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:426(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builtin.py:56(BuiltinVariable)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method posix.getcwd}\n", + " 4 0.000 0.000 0.000 0.000 {built-in method torch._C._dispatch_library}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1763(AffineBase)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:309(_convert)\n", + " 156 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:558(__getattr__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:313(select_from)\n", + " 59 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:237(_releaseLock)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/fnmatch.py:74(translate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext_data.py:464()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/testing.py:15(pyparsing_test)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:297(HammerTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/quiver.py:870(Barbs)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:416(LambertTransform)\n", + " 2 0.000 0.000 0.000 0.000 {built-in method _abc._abc_register}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:474(SizeVariable)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_legacy.py:15(deprecated)\n", + " 125 0.000 0.000 0.000 0.000 {built-in method numpy.zeros}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:22(_NodeMissingOnnxShapeInference)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:834(get_clip_path)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:249(AitoffTransform)\n", + " 462 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1147(__init__)\n", + " 66 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:356(_aggregate_mutables)\n", + " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1844(set_name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:273(DefaultsSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/mutation_guard.py:1()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:264(get_aliased_and_aliases)\n", + " 57 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2463()\n", + " 38 0.000 0.000 0.000 0.000 {method 'splitlines' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GifImagePlugin.py:39(LoadingStrategy)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1613(__invert__)\n", + " 8 0.000 0.000 0.000 0.000 {built-in method torch._C._dispatch_has_kernel_for_dispatch_key}\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:260(points_to_pixels)\n", + " 136 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1549()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_version_control_details.py:15(VersionControlDetails)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/comptime.py:18(ComptimeVar)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/__init__.py:36(__deprecate_private_class)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:68(StatsProfile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1693(Annulus)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2789(_Mode)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:1794(_adaptive_pool)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:351(IFD)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:849(__init__)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:503(_cmpkey)\n", + " 34 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:297(__getitem__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:934(_scandir)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives_impl.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_unary_ufuncs_impl.py:1()\n", + " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2345(parseImpl)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_globals.py:1()\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1091()\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3399(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2890(Regex)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:344(MollweideTransform)\n", + " 216 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1757()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2028(_staircase)\n", + " 2 0.000 0.000 0.000 0.000 {built-in method posix.access}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:368(FigureCanvasAgg)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/fx/passes/fake_tensor_prop.py:12(FakeTensorProp)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:964(StepPatch)\n", + " 46 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:515(_from_parsed_parts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:208(__getattr__)\n", + " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:487(__exit__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:168(Transform)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1893(set_major_locator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_content.py:15(ArtifactContent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:188(InvertedPolarTransform)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:335(_interpolate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:507(PythonSysModulesVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1823(_MathStyle)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:1716(_avg_pool)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:16(CheckpointImpl)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:204(TensorProperty)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:201(LogTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_properties.py:25(ExternalProperties)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2820(parseImpl)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4739(__init__)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:506(suppress_matplotlib_deprecation_warning)\n", + " 200 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:345()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2177(BlendedGenericTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:272(InvertedAitoffTransform)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:755(get_remove_overlapping_locs)\n", + " 122 0.000 0.000 0.000 0.000 {method 'reset' of '_contextvars.ContextVar' objects}\n", + " 84 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:603()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:964(__len__)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1269(_process)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:686(_register_basic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:202(SymbolicRegistry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:763(GraphicsContextBase)\n", + " 62 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:266(_check_generic)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1853(set_minor_formatter)\n", + " 149 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/collections/__init__.py:422()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1814(Affine2DBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_location.py:12(ArtifactLocation)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:3552(_unsupported_dropout)\n", + " 122 0.000 0.000 0.000 0.000 {method 'set' of '_contextvars.ContextVar' objects}\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:289(_avg_pool)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:51(DynamoCallbackFn)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:610(Shadow)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:4978(_one_hidden_rnn)\n", + " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:147(lazycache)\n", + " 216 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1756()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_layoutgrid.py:1()\n", + " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:1888(_nonzero_dispatcher)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:383(decorator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1502(add_gridspec)\n", + " 109 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:772(rotation_point)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:967(_find_data_repr_)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:316(InvertedHammerTransform)\n", + " 67 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:205()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:287(wrapper)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5451(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:456(InvertedLambertTransform)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:188(caching_module_getattr)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:363()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_rectangle.py:12(Rectangle)\n", + " 114 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:260()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:209(Quantize)\n", + " 332 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1248(value)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:196(Dither)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:386(InvertedMollweideTransform)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3054(_hash_basis)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1611(set_aspect)\n", + " 244 0.000 0.000 0.000 0.000 {built-in method math.floor}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2698(_Base)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2611(set_layout_engine)\n", + " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1335(set_parse_math)\n", + " 14 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:436()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1909(set_minor_locator)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:25(_maybe_view_as_subclass)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:139(finalize)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:970(y1)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1138(start)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1265(_set_artist_props)\n", + " 41 0.000 0.000 0.000 0.000 {built-in method _imp.is_builtin}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:99(Disposal)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/utils.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1513(Ellipse)\n", + " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:746()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1176(PolyCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/texmanager.py:56(TexManager)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mathtext.py:48(__init__)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:918(__init__)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:886(get_snap)\n", + " 12 0.000 0.000 0.000 0.000 {method 'cumsum' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4344(ParseElementEnhance)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:52(_process_keys)\n", + " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1150(_generate_next_value_)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_configuration.py:12(ReportingConfiguration)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:924(reset_ticks)\n", + " 57 0.000 0.000 0.000 0.000 {built-in method fromkeys}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_references.py:15(ExternalPropertyFileReferences)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1046(get_hatch_linewidth)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:104(__init__)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1038(get_hatch_color)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:243(InvertedLogTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1371(_tzparser)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1027(get_hatch)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:849(get_dashes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:583(LogitTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1518(TensorStaticReason)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:381(InvertedSymmetricalLogTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4437(IndentedBlock)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:12(MutableLocalSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:58(RendererAgg)\n", + " 97 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5713()\n", + " 226 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:180(open_group)\n", + " 1 0.000 0.000 0.000 0.000 {method '_timer_start' of '_macosx.Timer' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:483(InvertedAsinhTransform)\n", + " 174 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:279(get_fillstyle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm.py:66(cubehelix)\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:597(get_url)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:672(get_offset)\n", + " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1050(get_sketch_params)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:464(AsinhTransform)\n", + " 226 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:187(close_group)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:152(validate_axisbelow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:887(RegularPolygon)\n", + " 2 0.000 0.000 0.000 0.000 {built-in method posix.mkdir}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpGradientFile.py:1()\n", + " 49 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2333(_generateDefaultName)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1837(is_separable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/resume_execution.py:279(ResumeFunctionMetadata)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:328(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:27(ParseResults)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:609(LogisticTransform)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:367(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm_listed.py:2061()\n", + " 180 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:355()\n", + " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1455(is_dashed)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset18.py:1()\n", + " 104 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:165(keys)\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2795(__hash__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_device.py:1()\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:2181(wrap_logical_op_with_negation)\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:202(_checkLevel)\n", + " 3 0.000 0.000 0.000 0.000 {built-in method torch._C._get_tracing_state}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_run_automation_details.py:12(RunAutomationDetails)\n", + " 289 0.000 0.000 0.000 0.000 {method 'span' of 're.Match' objects}\n", + " 68 0.000 0.000 0.000 0.000 {method 'set_size' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:176(finalize)\n", + " 6 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(unravel_index)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact.py:17(Artifact)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1808(getattr_static)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/textpath.py:26(__init__)\n", + " 154 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1700(leave_whitespace)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:1()\n", + " 51 0.000 0.000 0.000 0.000 {built-in method builtins.locals}\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:326(get)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_exporter_states.py:1()\n", + " 67 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:99(deprecated)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/context.py:34(Diagnostic)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1641(sca)\n", + " 97 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1868(streamline)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:848(limit_range_for_scale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tritools.py:1()\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:154(_deprecated_property)\n", + " 29 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:622(name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trirefine.py:1()\n", + " 16 0.000 0.000 0.000 0.000 :815(__len__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:173(__init__)\n", + " 137 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1633()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5667()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/abc.py:131(TraversableResources)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:608(padded)\n", + " 80 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ndarray.py:82(create_method)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:105(_set_new_active_manager)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:146()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnx_proto_utils.py:1()\n", + " 40 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2998()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1564(__repr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor.py:17(ReportingDescriptor)\n", + " 53 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:182(_add_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow_location.py:19(ThreadFlowLocation)\n", + " 2 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(ravel_multi_index)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/_structures.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1602(RadioButtons)\n", + " 62 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2285(_register_style)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:980(p1)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:846(add_param_group)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:80(Text)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:1()\n", + " 105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:88(do_copy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3357(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1152(stop)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:75(nums)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1147(set_fontweight)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:160(get_subplotspec_list)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_region.py:16(Region)\n", + " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:17()\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:223(get_tick_padding)\n", + " 204 0.000 0.000 0.000 0.000 {method 'ljust' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:617(Final)\n", + " 177 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3035(return_annotation)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:316(_flatten_literal_params)\n", + " 16/4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:84(_convert)\n", + " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:43(update)\n", + " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4100()\n", + " 138 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:227()\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:389(extended_frame_gen)\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2119()\n", + " 131 0.000 0.000 0.000 0.000 {method 'items' of 'mappingproxy' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:496(Image)\n", + " 16 0.000 0.000 0.000 0.000 :798(__eq__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:80(_invalidates_cache)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:815(overload_by_arg_count)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:703(OpAssoc)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:85(_listify_validator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:141(GraphCompileReason)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:120(Blend)\n", + " 135 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3803()\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:832(_reduce_with_dtype)\n", + " 77 0.000 0.000 0.000 0.000 {method 'setter' of 'property' objects}\n", + " 105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:86(copy)\n", + " 152 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:668(result_type)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3488(__init__)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1967()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:117(Artist)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:815(Grouper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:17(_AutoStringNameEnum)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/isoparser.py:22(_takes_ascii)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2600(_ptp_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/context.py:272(DiagnosticContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_graph.py:17(Graph)\n", + " 44 0.000 0.000 0.000 0.000 :357(_get_module_path)\n", + " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:605(set_wrap)\n", + " 1 0.000 0.000 0.000 0.000 {method '_timer_stop' of '_macosx.Timer' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3459(__init__)\n", + " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:458(_set_nothing)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triangulation.py:1()\n", + " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:440(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_notification.py:18(Notification)\n", + " 3 0.000 0.000 0.000 0.000 :397(abspath)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1154(set_axes_locator)\n", + " 18 0.000 0.000 0.000 0.000 :794(values)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_code_flow.py:16(CodeFlow)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1683(suppress)\n", + " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:246(get_canvas_width_height)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2309(_unpack_to_numpy)\n", + " 129 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:17(__getitem__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:32(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3262(__init__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:132(_validate_fromutc_inputs)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:2274(_isclose_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:204(Palette)\n", + " 83 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:313(quantized_args)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool.py:12(Tool)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1740(tick_values)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3228(add_axobserver)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:266(validate_color_or_inherit)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1073(Polygon)\n", + " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2328(_any_dispatcher)\n", + " 161 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:196(escape_re_range_char)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_address.py:12(Address)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:405(_generate_overlap_table)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:450(configure_artifact_log)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:231(Japanese)\n", + " 64 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:440(__repr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:15(GeoAxes)\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:167(check_getitem)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:231(__post_init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:641(Path3DCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3757(And)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:262(x1)\n", + " 39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:877(__hash__)\n", + " 84 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:433()\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:108()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:568(parser)\n", + " 6 0.000 0.000 0.000 0.000 :150(dirname)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1470(__get_gettz)\n", + " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:133(_unique_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageColor.py:1()\n", + " 27 0.000 0.000 0.000 0.000 {method 'translate' of 'bytearray' objects}\n", + " 57 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:202()\n", + " 114 0.000 0.000 0.000 0.000 {method 'decode' of 'bytes' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:111(GradModeVariable)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3452(register_extensions)\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2224(RewriteSymbolics)\n", + " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:807(get_width)\n", + " 137 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:476(_broadcast_arrays_dispatcher)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3047(get_size_inches)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:2150(identity)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:28()\n", + " 89 0.000 0.000 0.000 0.000 {method 'encode' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/actions.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1172(Wedge)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:852(register)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:154(_crc32)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1623(__getitem__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_web_response.py:15(WebResponse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_replacement.py:16(Replacement)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:83(Unset)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1373(_result)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:208(register_axis)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1778(_check_class)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:681(add_parse_action)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:707(scale_factory)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:800(singledispatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:2042(MultiCursor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_web_request.py:15(WebRequest)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:866(__contains__)\n", + " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:308(wrapper)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1497(__mro_entries__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:247()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1880(Circle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1689(patch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:406(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_graph_traversal.py:16(GraphTraversal)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:312(_logged_cached)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1321(__call__)\n", + " 100 0.000 0.000 0.000 0.000 {method '__exit__' of 'numpy.nditer' objects}\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3297(_generateDefaultName)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2278(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:693(add_condition)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:469(draw_if_interactive)\n", + " 156 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:772(postParse)\n", + " 112 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:429(is_transform_set)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/function_base.py:2269(__init__)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:116(clear)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:554()\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4972(_generateDefaultName)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:846()\n", + " 25 0.000 0.000 0.000 0.000 {built-in method unicodedata.name}\n", + " 112 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1371(get_mouseover)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1488(CirclePolygon)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:126(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:303(IFDRational)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm.py:158()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3561(_apply_env_variables)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2306(mpl_disconnect)\n", + " 77 0.000 0.000 0.000 0.000 :409(__subclasshook__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:861()\n", + " 134 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:93(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/_common.py:1()\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_guards.py:166(__hash__)\n", + " 65 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:244(__bool__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1230(exists)\n", + " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:264(__init__)\n", + " 16 0.000 0.000 0.000 0.000 :78(_check_methods)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:987(gcf)\n", + " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:135()\n", + " 28 0.000 0.000 0.000 0.000 {method 'fullmatch' of 're.Pattern' objects}\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:431()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:41(ExecutionRecorder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colorbar.py:195(Colorbar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:178(decide_compile_threads)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:35(_get_running_interactive_framework)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3441(register_extension)\n", + " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:106(__hash__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2190(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1560(transform_bbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_property_bag.py:10(PropertyBag)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:48(__new__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_util.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1032(enable_packrat)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:389(_bytes_to_codes)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:669(decorator)\n", + " 149 0.000 0.000 0.000 0.000 {method 'pop' of 'collections.deque' objects}\n", + " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:199(get_path)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1570()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:302(DataClassVariable)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:136(_commonType)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:96(__get__)\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:795(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:936(PathPatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/current_scope_id.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageMode.py:1()\n", + " 92 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1003(minpos)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:231(_ImageBase)\n", + " 94 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:1079(copyto)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_logical_location.py:12(LogicalLocation)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:181(_add_filter)\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:679(min)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:56(_make_str_method)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_translation_metadata.py:15(TranslationMetadata)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:120(CallbackRegistry)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/distributed_c10d.py:346(__getattribute__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_result_provenance.py:15(ResultProvenance)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:112(__diag__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3232()\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2269()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_location.py:19(Location)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_message.py:12(Message)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3528(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:799(null)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/twodim_base.py:162(eye)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1761(set_box_aspect)\n", + " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:142()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2142(_set_artist_props)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/table.py:239(Table)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:350()\n", + " 84 0.000 0.000 0.000 0.000 {method 'update' of 'set' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/serialization.py:1()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_compile.py:8(_disable_dynamo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PaletteFile.py:1()\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:386()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_exception.py:16(Exception)\n", + " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:404()\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2736(axes)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:1878(isscalar)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_binary.py:101(o32be)\n", + " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:77(_atleast_2d_dispatcher)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:568(__init__)\n", + " 40 0.000 0.000 0.000 0.000 {method 'startswith' of 'bytes' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:322(condition_as_parse_action)\n", + " 2 0.000 0.000 0.000 0.000 :117(splitext)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:2170(decorator)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:859(set_bounds)\n", + " 59 0.000 0.000 0.000 0.000 {method 'acquire' of '_thread.RLock' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/random.py:70(_seed_custom_device)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1697(set_adjustable)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:45(_compat_get_offset)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:212(_validate_pathlike)\n", + " 105 0.000 0.000 0.000 0.000 {method 'removeprefix' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:45(Tag)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:188(UserDefinedObjectVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:982(FontManager)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:289(update)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpPaletteFile.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:140(__init__)\n", + " 90 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:842(_hash_set_none)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:421(validate_whiskers)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:687()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:677(Bbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:749(StixFonts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_physical_location.py:17(PhysicalLocation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/__init__.py:1()\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:272(y1)\n", + " 57 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:265()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5044(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:26(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:23(ExecutionRecord)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2676(notify_axes_change)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:100(get_active)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1924(_caller)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_location_relationship.py:12(LocationRelationship)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:171(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:150(TorchFunctionDisableVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_stack_frame.py:12(StackFrame)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_special_locations.py:15(SpecialLocations)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/quiver.py:235(QuiverKey)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:214(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:1872(AppendingTiffWriter)\n", + " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:325(walk_stack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_suppression.py:12(Suppression)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:257()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:417(_getencoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2324(new_timer)\n", + " 48 0.000 0.000 0.000 0.000 :315(__subclasshook__)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3392(register_open)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1693(_process_projection_requirements)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:165(simplefilter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_reference.py:15(ReportingDescriptorReference)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/testing.py:124(TestParseResultsAsserts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1302(RegularPolyCollection)\n", + " 41 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:262(haskeys)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mathtext.py:37(MathTextParser)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:77()\n", + " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:805(get_color)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageSequence.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool_component_reference.py:12(ToolComponentReference)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_node.py:17(Node)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:259(disconnect)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:41(tzutc)\n", + " 64 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3858()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1794(_shadowed_dict)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:667(with_name)\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:368(_intersect1d_dispatcher)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3216(update)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/nn_module.py:66(NNModuleVariable)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:591(__iter__)\n", + " 38 0.000 0.000 0.000 0.000 :260(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/nn_module.py:634(UnspecializedNNModuleVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:624(SkipFilesVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:256(_validate_toolbar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_edge.py:12(Edge)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_sarif_log.py:16(SarifLog)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:1281(TorchPatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_getlimits.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:906(AnchoredOffsetbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1909(TriMesh)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_attachment.py:18(Attachment)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:27(_apply)\n", + " 9 0.000 0.000 0.000 0.000 {method 'clear' of 'collections.OrderedDict' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_relationship.py:16(ReportingDescriptorRelationship)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:510(update)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:345(get_path)\n", + " 47 0.000 0.000 0.000 0.000 {method 'index' of 'list' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_edge_traversal.py:12(EdgeTraversal)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:383(get_snap_threshold)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:194(find_spec)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:445()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1768(EllipseCollection)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2259(_make_getset_interval)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3055()\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:761(_isin_dispatcher)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2796()\n", + " 3 0.000 0.000 0.000 0.000 :389(normpath)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:364(get_alt_path)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:152(__contains__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3125(clear)\n", + " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:199(no_escape_re_range_char)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:594(__len__)\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:519(_in1d_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:149(_tzinfo)\n", + " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:673()\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4753(_generateDefaultName)\n", + " 68 0.000 0.000 0.000 0.000 {method 'get_descent' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1229(__hash__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1553(unique)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:62(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:434(BakomaFonts)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:156(update)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:433(__init__)\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:73(_zeros_like_dispatcher)\n", + " 45 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:452(_parse_letter_version)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:249(validate_backend)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_multiformat_message_string.py:12(MultiformatMessageString)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:286(_validate_color_or_linecolor)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:896(get_drawstyle)\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:390()\n", + " 39 0.000 0.000 0.000 0.000 {method 'get_width_height' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 5 0.000 0.000 0.000 0.000 {built-in method _warnings.warn}\n", + " 54 0.000 0.000 0.000 0.000 {method '__exit__' of '_thread.RLock' objects}\n", + " 59 0.000 0.000 0.000 0.000 {method 'release' of '_thread.RLock' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:426(_reduce_with_dtype)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:164(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:831(PsfontsMap)\n", + " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:84(empty_like)\n", + " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4088()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:637(colspan)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/__init__.py:21(__deprecated_private_func)\n", + " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:834(get_alpha)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5509(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_reference.py:15(ExternalPropertyFileReference)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:2126(QuadMesh)\n", + " 12 0.000 0.000 0.000 0.000 {built-in method zlib.crc32}\n", + " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4087()\n", + " 4 0.000 0.000 0.000 0.000 :283(__subclasshook__)\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:221()\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2530(overload)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:44(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:501(CompilationMetrics)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:31(unicode_set)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:86(_update_methods)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:609(get_markevery)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:183(Line3D)\n", + " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:303(get_marker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:132(tzoffset)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:174(_make_type_validator)\n", + " 49 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1663()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:85(register_artifact_log)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:9(Gcf)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:631(rowspan)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:239(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:328(add_text)\n", + " 49 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:715()\n", + " 48 0.000 0.000 0.000 0.000 {method 'issuperset' of 'set' objects}\n", + " 66 0.000 0.000 0.000 0.000 {built-in method _warnings._filters_mutated}\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:296(_apply_params)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:990(intervaly)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:98(prepare_class)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1695(safe_isfinite)\n", + " 1 0.000 0.000 0.000 0.000 {method 'flush' of '_io.BufferedRandom' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_configuration_override.py:16(ConfigurationOverride)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:19(ParseBaseException)\n", + " 56 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:327(_select_from)\n", + " 42 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:177(__init__)\n", + " 22 0.000 0.000 0.000 0.000 :361(_is_dir)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_conversion.py:17(Conversion)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2498(get_minpos)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:76(Text3D)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:543(_new)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2634(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1223(fields)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4578(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3418(draw_if_interactive)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1590(get_major_locator)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4370(recurse)\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:385()\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:295(checkgroupname)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:311(triton)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageChops.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:88(_finalize_rasterization)\n", + " 9 0.000 0.000 0.000 0.000 :1103(_sanity_check)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/api.py:23(FFI)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1116(__init__)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:198()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_stack.py:16(Stack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_globals.py:15(_InternalGlobals)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:454(__contains__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:804(PolarAxes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:233()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:226()\n", + " 29 0.000 0.000 0.000 0.000 {method 'get_bitmap_offset' of 'matplotlib.ft2font.FT2Font' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1271(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:180(DeterministicAlgorithmsVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:56(__init__)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:565()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1189(args)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3532(parseImpl)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:12(__config_flags)\n", + " 58 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:672(flipy)\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:247(__iter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:961(_CollectionWithSizes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/abc.py:14(ResourceReader)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2239(get_label_position)\n", + " 20 0.000 0.000 0.000 0.000 :812(__init__)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5721(token_map)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:440(__getitem__)\n", + " 50 0.000 0.000 0.000 0.000 {method 'insert' of 'list' objects}\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3058()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_secondary_axes.py:11(SecondaryAxis)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/decoder.py:284(__init__)\n", + " 1 0.000 0.000 0.000 0.000 :773(getenv)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:264(__init__)\n", + " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:158()\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:372()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:522(_push_cm_exit)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method posix.cpu_count}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_change.py:16(ArtifactChange)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:977(clear)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:115()\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:794(get_window_extent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:102(PrimitiveType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:100(__init__)\n", + " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4099()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:409(iscoroutinefunction)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:493(Module_six_moves_urllib)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:633(__init__)\n", + " 1 0.000 0.000 0.000 0.000 {method 'requires_grad_' of 'torch._C._TensorBase' objects}\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/deprecated.py:20(get_warning)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:131(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/codegen.py:43(PyCodegen)\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:14(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:1033(_LuatexKpsewhich)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2289(XAxis)\n", + " 35 0.000 0.000 0.000 0.000 {built-in method sys._getframe}\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2592(_check_layout_engines_compat)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_fix.py:16(Fix)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:74(Stats)\n", + " 1 0.000 0.000 0.000 0.000 :422(spec_from_loader)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1358(decorate_callable)\n", + " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:229(_ishidden)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:62(__init__)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method PIL._imaging.zip_encoder}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/BmpImagePlugin.py:62(BmpImageFile)\n", + " 29 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:820(get_antialiased)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1925(set_pickradius)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:76(_convert_signed_num)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:435(locally_modified_subplot_params)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:292(p1)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:73(ToolBase)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:94(join_parsed_parts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:44(LoggingTensor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:128(OrtOperatorSupport)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:234(_has_alpha_channel)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_deprecate.py:1()\n", + " 23 0.000 0.000 0.000 0.000 {method 'partition' of 'str' objects}\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:222(has_magic)\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2821()\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:72(_apply_params)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:439(from_list)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1216(Normalize)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3379(_generateDefaultName)\n", + " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4098()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:52(ConfigModule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/mutation_guard.py:56(GenerationTracker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3210(RectangleSelector)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:1()\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:797(__iter__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:498(set_useLocale)\n", + " 1 0.000 0.000 0.000 0.000 :933(clear)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:695(__hash__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:221(validate_fonttype)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:370(__init__)\n", + " 26 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2016()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2741(get_minpos)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:77(__call__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1276(Transform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2527(YAxis)\n", + " 26 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:388(_delegate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:12(ModuleRecord)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:181()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:33()\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:70(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/JpegPresets.py:1()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:209()\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:351()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4895(_generateDefaultName)\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:188(_dispatch)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:548(from_dict)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1545(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triangulation.py:8(Triangulation)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4773(stopOn)\n", + " 2 0.000 0.000 0.000 0.000 :121(_splitext)\n", + " 9 0.000 0.000 0.000 0.000 {built-in method _struct.calcsize}\n", + " 2 0.000 0.000 0.000 0.000 :262(__subclasshook__)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:238(__contains__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tripcolor.py:1()\n", + " 88 0.000 0.000 0.000 0.000 {built-in method builtins.globals}\n", + " 23 0.000 0.000 0.000 0.000 {method 'rsplit' of 'str' objects}\n", + " 43 0.000 0.000 0.000 0.000 {method 'pop' of 'set' objects}\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1787()\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:170(change_key)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:375(ScalarFormatter)\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2265()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:21(FigureCanvasMac)\n", + " 4 0.000 0.000 0.000 0.000 :362(__subclasshook__)\n", + " 25 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:669(_block_list_in_opset)\n", + " 39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1873(recurse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3045(QuotedString)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:732(XAxis)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/relativedelta.py:13()\n", + " 46 0.000 0.000 0.000 0.000 {method 'reverse' of 'list' objects}\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:310(_original_line)\n", + " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:171(__set_name__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:841(_is_union_type)\n", + " 61 0.000 0.000 0.000 0.000 {built-in method _sre.unicode_iscased}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:181(dynamo_timed_inner)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:404(trace)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3511(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:2177(_SelectorWidget)\n", + " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1165(get_axes_locator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:531(SubplotSpec)\n", + " 16 0.000 0.000 0.000 0.000 {built-in method _struct.pack}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:665(Colormap)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:283(get_children)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1740()\n", + " 57 0.000 0.000 0.000 0.000 {built-in method _sre.unicode_tolower}\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3627(recurse)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1263(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:241(parserinfo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:89(__compat__)\n", + " 4 0.000 0.000 0.000 0.000 :60(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:270(DiagnosticOptions)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:587(ExportOutput)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:960(ImageFileDirectory_v1)\n", + " 3 0.000 0.000 0.000 0.000 {built-in method posix._path_normpath}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/registration.py:35(OpName)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1153(LockableBbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4866(ZeroOrMore)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:118(set_active)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:532(FontProperties)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2149(SubFigure)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:223()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1565(EventCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:210(_process_plot_var_args)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:545(locator)\n", + " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:370()\n", + " 35 0.000 0.000 0.000 0.000 {method 'bit_length' of 'int' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/logging.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives.py:304(AsyncCollectiveTensor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:97(ColorSequenceRegistry)\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:190(set_axis)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:86(as_list)\n", + " 1 0.000 0.000 0.000 0.000 :1276(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:283(__len__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:72(_convert_num)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:103(OnnxRegistry)\n", + " 8 0.000 0.000 0.000 0.000 :1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:848(AxesImage)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:104(Cycler)\n", + " 41 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/_distutils_hack/__init__.py:96()\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:576(_validate_greaterequal0_lessequal1)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:120(__init__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:112(_makearray)\n", + " 34 0.000 0.000 0.000 0.000 {method 'groupdict' of 're.Match' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:227(RuleCollection)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3418(register_save)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1972(_MeshData)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:190(set)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/relativedelta.py:18(relativedelta)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:391(_has_code_flag)\n", + " 4 0.000 0.000 0.000 0.000 {built-in method numpy.core._multiarray_umath.normalize_axis_index}\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:835(load)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:181()\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1273(append)\n", + " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:609(num2)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:131(_validate_date)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:551(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triplot.py:1()\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:33(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1378(LineCollection)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:97(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1310(__init__)\n", + " 1 0.000 0.000 0.000 0.000 :1311(__iter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:809(Replacer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5117(Forward)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:110(get_projection_class)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:119(_resolve)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:236(create_module)\n", + " 10 0.000 0.000 0.000 0.000 :1220(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3304(parseImpl)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset8.py:70(_apply)\n", + " 36 0.000 0.000 0.000 0.000 {method 'end' of 're.Match' objects}\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:556(formatter)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1668(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method time.localtime}\n", + " 5 0.000 0.000 0.000 0.000 :818(fsdecode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:438(HFPretrainedConfigVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:740(YAxis)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_VF.py:26(__getattr__)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2883(_namedtuple_mro_entries)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:74(__lt__)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:568(_validate_greaterthan_minushalf)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImagePalette.py:25(ImagePalette)\n", + " 42 0.000 0.000 0.000 0.000 {method 'upper' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:517(CleanupHook)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/constant.py:29(ConstantVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_binary.py:1()\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:85(_import_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:844(Poly3DCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:390(ScalarMappable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2354(Keyword)\n", + " 7 0.000 0.000 0.000 0.000 {method 'seek' of '_io.BufferedReader' objects}\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:702(get_scale_names)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:124()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2189(runtime_checkable)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:147(forbid_in_graph)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:125(Element)\n", + " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/function_base.py:18(_linspace_dispatcher)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1603(get_aspect)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1305(EngFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:366(backend_mod)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:100(is_off_by_default)\n", + " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3361()\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:74(get_geometry)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._log_api_usage_once}\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1744(_fix_ipython_backend2gui)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:442()\n", + " 37 0.000 0.000 0.000 0.000 {method 'clear' of 'dict' objects}\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3407(register_mime)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1794()\n", + " 2 0.000 0.000 0.000 0.000 :1293(_get_parent_path)\n", + " 6 0.000 0.000 0.000 0.000 :760(decode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4983(SkipTo)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1766(_static_getmro)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/__init__.py:7(is_available)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:64(Rule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:815(LogFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_afm.py:358(AFM)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/jit_utils.py:23(GraphContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:32(ToolManager)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1729()\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:535(__init__)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:227()\n", + " 2 0.000 0.000 0.000 0.000 :786(keys)\n", + " 2 0.000 0.000 0.000 0.000 {method 'manual_seed' of 'torch._C.Generator' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1884(Affine2D)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:765(_validate_legend_loc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1418(_rrulestr)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._get_schema}\n", + " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_deprecation.py:8(deprecated)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:512(__init__)\n", + " 1 0.000 0.000 0.000 0.000 {method '_set_window_mode' of '_macosx.FigureManager' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:21()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1512(CenteredNorm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3321(White)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2452(_unit_change_handler)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:374(validate_fontweight)\n", + " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:617(get_gridspec)\n", + " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:305(_export)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:418(__getattr__)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1798(get_anchor)\n", + " 1 0.000 0.000 0.000 0.000 :1037(_resolve_name)\n", + " 1 0.000 0.000 0.000 0.000 :100(split)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:56(TensorVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1077(TransformedBbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:103(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:748(ZAxis)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5456(postParse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1494(__or__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:81(ExportDiagnosticEngine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/__init__.py:106(__version__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2613(Word)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3380(_Backend)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/stackplot.py:1()\n", + " 3 0.000 0.000 0.000 0.000 :381(__subclasshook__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1787(_is_type)\n", + " 1 0.000 0.000 0.000 0.000 :39(isdir)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:31(iglob)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:1950(InstructionTranslator)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:53(__get__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:360(PngStream)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4066(MatchFirst)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2579(FigureManagerBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:32()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:59(ColormapRegistry)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:231(_normalize)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:527(_push_exit_callback)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:42(_MissingCustomSymbolicFunction)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1685(TransformWrapper)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method PIL._imaging.map_buffer}\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1689()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:267(tzrangebase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/collections/__init__.py:585(__init__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_guards.py:190(source)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_globals.py:22(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:2278(LightSource)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:966(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1255(__mro_entries__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:208(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:26(ConstDictVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:958(LinearSegmentedColormap)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2204(_Style)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:523(Ticker)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py:90(RLock)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:228()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1106(__init__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1720(getEffectiveLevel)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:262(cpp)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1267(__init__)\n", + " 32 0.000 0.000 0.000 0.000 {built-in method _operator.index}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:182()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:183()\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:434()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:76()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:386(tzfile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:67(_raise_malformed_node)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:117(isComplexType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:279(ConstPointerType)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:238()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:26(StrCategoryConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:286(CubicTriInterpolator)\n", + " 3 0.000 0.000 0.000 0.000 {method 'tolist' of 'memoryview' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/mutation_guard.py:10(MutationTracker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:134(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 {method 'setimage' of 'ImagingEncoder' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:114(OrphanPath)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:75(register)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:674(get_topmost_subplotspec)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:491(_parse_local_version)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:9(__init__)\n", + " 14 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/_common.py:9(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:172(Stack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:109(OptimizedModule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/textpath.py:20(TextToPath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_layoutgrid.py:31(LayoutGrid)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:108(ConversionInterface)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mlab.py:770(GaussianKDE)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:138()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1427(exec_body_callback)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2573()\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:243(generic_jump)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:645(RcParams)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3597(Exif)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4522(AtLineStart)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:62(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:595(DrawingArea)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:524(__init__)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:224(__set_name__)\n", + " 12 0.000 0.000 0.000 0.000 :7(abstractmethod)\n", + " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1238()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:579(_update_clip_properties)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1755(have_units)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:198()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2875(_check_size)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/shlex.py:19(shlex)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:725(_NoopSaveInputs)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:169(is_fbcode)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:406(_validate_mathtext_fallback)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:477(QName)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GifImagePlugin.py:63(GifImageFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1193(kwargs)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:292()\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:307(__len__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:787(parents)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1962(MaxNLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:754()\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:726(get_figure)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:548(ColorConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:125()\n", + " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:518()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:858(validate_hist_bins)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:72(colorbar_gridspec)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:460(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/comptime.py:112(ComptimeContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/lock.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1167(interval)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:498(_ThetaShift)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:577(KeyedJaggedTensorVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:149(FigureManagerMac)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:495(popitem)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2704(LogitLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2592(AsinhLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:73(_AxesStack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:205(load_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:394(_ymd)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:190()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:5(Container)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2056(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1023(get_fignums)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:244(DType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:420(major)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:164(_resolve)\n", + " 23 0.000 0.000 0.000 0.000 {built-in method _stat.S_ISLNK}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:1132(SubgraphTracer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/_structures.py:6(InfinityType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2445(CompositeAffine2D)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3225(ToolContainerBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2369(Ellipse)\n", + " 1 0.000 0.000 0.000 0.000 :1297(_recalculate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:570(Stack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:1()\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:790(get_scale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tritools.py:11(TriAnalyzer)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:115(is_artifact_enabled)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/version.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1767(C14NWriterTarget)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:723(PngImageFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PaletteFile.py:19(PaletteFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:1059(TiffImageFile)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:38(_ignore_error)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config.py:264(is_fbcode)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:107(get_linalg_error_extobj)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:218(TensorPropertySource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:106()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:100(add)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:186(_assert_stacked_square)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:366()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:71(DefaultDeviceType)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:55()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:238(HandlerLine2DCompound)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_guards.py:186(name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:163(FakeRootModule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:494(GetAttrVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:522(Spines)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/backends/registry.py:9(CompiledFn)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:560(CollectiveFunctionRewriteVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1458(PercentFormatter)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1465()\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:241(__len__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:319(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1402(_fixupChildren)\n", + " 1 0.000 0.000 0.000 0.000 :1081(__subclasshook__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:41(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:308(add_module_init_func)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:795(Config)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1895(device_pixel_ratio)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:201(tzlocal)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:219(is_package)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:748(_WedgeBbox)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2833()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:347(__exit__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:317()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:666(SymNodeVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1141(OffsetImage)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/test_operators.py:13(Realize)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1181(single_shot)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1751(ParserState)\n", + " 8 0.000 0.000 0.000 0.000 :1224(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/torch.py:138(TorchVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1109(LogitFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/__init__.py:99(version_info)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:706(isDefault_majloc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:1018(TensorSubclassVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_version.py:1()\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:452(set_useOffset)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/_weakrefset.py:173(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1602(_get_target)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:175(WrapperBackend)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:65(_BaseVersion)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:254(iTXt)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:126()\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3380()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:1481(QuadContourSet)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:896(ToolHelpBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1458(DraggableBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:421(buffer_rgba)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:251(CommonListMethodsVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:198(Formatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:83(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:65(Text)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:239()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:707(TextArea)\n", + " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2519(_cumsum_dispatcher)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:180(_assert_stacked_2d)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:121(BlockStackEntry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:534(Patch3DCollection)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:225(_clear)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/external_utils.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:220(_TorchDynamoContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/_structures.py:35(NegativeInfinityType)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1014(minposx)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1444(_AnnotationBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1167(_tzicalvtz)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1475(GettzFunc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:361(HandlerStepPatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:140(PolarAffine)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:77(resolve_bases)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:884(FXGraphExtractor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:273(ExportOptions)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3911(Or)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:561(_from_subplot_args)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:714(isDefault_majfmt)\n", + " 8 0.000 0.000 0.000 0.000 {built-in method math.isfinite}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_deprecation.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:45(InputAdapter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1174(CompileProfiler)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:347(ListVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:94(rrulebase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4591(PrecededBy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:124(Circles)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1748(CircleCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:158(ToolToggleBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:77(destroy_all)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1388(BboxImage)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3410(set_axis_on)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:186(_get_module)\n", + " 20 0.000 0.000 0.000 0.000 {method '__init_subclass__' of 'object' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:43(TorchScriptOnnxExportDiagnostic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:165(GuardCodeList)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:2434(InliningGeneratorInstructionTranslator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1417(TwoSlopeNorm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:409(SymmetricalLogScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2159(_BlendedMixin)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4907(Opt)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1467(AxLine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1192(RRuleLocator)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:201(_is_param_expr)\n", + " 7 0.000 0.000 0.000 0.000 {method 'index' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:265(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:391(OptimizeContext)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3429(register_save_all)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:85(ImageFile)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:78(limit_range_for_scale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:709(ToolZoom)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:66(Widget)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1410(Hrule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:27(LayoutEngine)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2904(set_canvas)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1778(DateConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:232(LinearTriInterpolator)\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2744(annotation)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:855(_set_autoscale_on)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:130(_realType)\n", + " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:179(__repr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:971(UnspecializedPythonVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:133(DeviceMeshVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:525(ElementTree)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1752(LinearLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5554(Suppress)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3136(_Base)\n", + " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2678(get_layout_engine)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/__init__.py:23(_running_with_deploy)\n", + " 6 0.000 0.000 0.000 0.000 {method 'join' of 'bytes' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_constants.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:135(Location)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:764(_get_backend_or_none)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:162(ChunkStream)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:499(AsinhScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:221(Fonts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:540(UnicodeFonts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:824(AuxTransformBox)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2269(_generateDefaultName)\n", + " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1001()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:543(validate_bbox)\n", + " 3 0.000 0.000 0.000 0.000 {method 'index' of 'tuple' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:58(FunctionProfile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:101(UserFunctionVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:727(TensorWithTFOverrideVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:494(MapHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:677(_Stack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5373(Combine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1368(StarPolygonCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:2239(PolyQuadMesh)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3207(_Curve)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1188(PcolorImage)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:402(ThetaAxis)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:19(ConfigModuleInstance)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:63(DynamoGuardHook)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:688(clear)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2863(Char)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/textpath.py:293(TextPath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:169(_SixMetaPathImporter)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/__init__.py:43(private_class)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2372(get_origin)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/__init__.py:68(queue_seed_all)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:386(DequeVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1112(CheckpointHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:27(classproperty)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2525(BboxTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2499(CaselessKeyword)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:457(ToolViewsPositions)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:318(GridSpec)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/data/datapipes/_typing.py:221(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:367(ExactWeakKeyDictionary)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:39(UserDefinedClassVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:157(ProcessGroupVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:83()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:12(qualify)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4177(Each)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:200(install_repl_displayhook)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:48(SpecPath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/optimizer.py:25(OptimizerVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2663(ScaledTranslation)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:56(fget)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:127()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:68(_is_instance_mock)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:324(ResolvedExportOptions)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset11.py:89(_apply_params)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:191(CheckpointFunction)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:108(CheckpointWrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:246(DefaultDictVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:221(DisabledSavedTensorsHooksVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:419(AutogradFunctionContextVariable)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:557(validate_sketch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:345(StructOrUnion)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4714(NotAny)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1602(VertexSelector)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1325(FigureImage)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:94(bubble)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:730(isDefault_minfmt)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:259(DomainMap)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trirefine.py:47(UniformTriRefiner)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:899(_is_typevar_like)\n", + " 2 0.000 0.000 0.000 0.000 {built-in method time.time}\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:793(_reduce_op_symbolic)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:382(break_graph_if_unsupported)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:704(FlattenInputOutputSignature)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:1608(SourcelessBuilder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2175(_backend_module_name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4501(AtStringStart)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:329(TruetypeFonts)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:545(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:122(set_height_ratios)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:80(_add_doc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:78(add)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:36(SortKey)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:456(TupleVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:22(ContextWrappingVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:82(PlacementVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:233(__getattr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2568(BboxTransformTo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2627(BboxTransformFrom)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2220(_PendingSkip)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4862(_generateDefaultName)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:903(FontConstantsBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:405(XTick)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1112(_iterinfo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1215(_Sparse_Matrix_coo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:699(RadialAxis)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:412(Patch3D)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/fx/_compatibility.py:7(compatibility)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset8.py:76(_interpolate)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:2059(_interpolate)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:17(InstructionExnTabEntry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:174(StackSize)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:315(GetItemSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/operators.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:49(PlacementClassVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:261(LogScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2689(AffineDeltaTransform)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3241(CharsNotIn)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1373(AsteriskPolygonCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:830(ToolPan)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2044()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:613(num2)\n", + " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:722(isDefault_minloc)\n", + " 3 0.000 0.000 0.000 0.000 {built-in method sys.exc_info}\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset8.py:67(_apply_params)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:62(_MissingStandardSymbolicFunction)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:149(guard_source)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:762(SetElement)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:432(validate_ps_distiller)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:358(Parser)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:9(__init__)\n", + " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:851()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:434(__len__)\n", + " 1 0.000 0.000 0.000 0.000 {method 'title' of 'str' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:98(OutputAdapter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/convert_frame.py:75(Tracker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:364(NestedUserFunctionVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:359(CUDAStreamContextVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:12(DistributedVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1384(TreeBuilder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:453(_E)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:25(BaseTypeByIdentity)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:159(_DummyAxis)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1093(set_label)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:642(ZoomPanBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:527(PaddedBox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:462(YTick)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:985(_DOF_estimator)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:886(__repr__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:304(__init__)\n", + " 3 0.000 0.000 0.000 0.000 {method 'cast' of 'memoryview' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:264(UserMethodVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:272(AutocastModeVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives_impl.py:30(_WaitRegistration)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1506(XMLParser)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_util.py:5(is_path)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colorbar.py:146(_ColorbarAxesLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1308(Vlist)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:69(ProjectionRegistry)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1662(_value_and_type_iter)\n", + " 5 0.000 0.000 0.000 0.000 {method 'discard' of 'set' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:274(_FxNodeInsertTypePromotion)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:489(OrtExecutionInfoForAllGraphModules)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:14(generic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:61(_ColorMapping)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2438(SymmetricalLogLocator)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1025(minposy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1008(PathCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1068(Char)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:132(TightLayoutEngine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:83(ChildPath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1116(DateLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:15(TriInterpolator)\n", + " 2 0.000 0.000 0.000 0.000 :1283(_find_parent_path_names)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:212(InspectSignatureVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2055(_OrderedSet)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:88(_generate_etree_functions)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1121(ListedColormap)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4555(FollowedBy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:211(ConstrainedLayoutEngine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1399(ArtistList)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:13(tzname_in_python2)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:92(_OperatorSupportedInNewerOpsetVersion)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:126(_FxGraphToOnnx)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ndarray.py:47(Flags)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:93(LoggingTensorReentrant)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:26(SuperVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2719(TransformedPath)\n", + " 3 0.000 0.000 0.000 0.000 {method 'dim' of 'torch._C._TensorBase' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:163(Button)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:85(get_projection_names)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:724(__init__)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1795(is_saving)\n", + " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:71()\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/convert_frame.py:76(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:146(_FxNodeToOnnx)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:166(_FxPass)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:234(_OpLevelDebugging)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:294(_FindOperatorOverloadsInOnnxRegistry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:80(LocalSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_device.py:58(DeviceContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:113(GeneratorStateSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:473(ConstantSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:204(RangeVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/codegen.py:33(GraphOutputEntry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1840(SymLogNorm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1878(AsinhNorm)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3473(register_decoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:25(DTDForbidden)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:298(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:11(_ParseResultsWithOffset)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:245(ToolSetCursor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:573(DviFont)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:138(StrCategoryFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:219(_resultbase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:46(HandlerBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trifinder.py:27(TrapezoidMapTriFinder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:223(_GeoTransform)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:277(option_image_nocomposite)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/JpegImagePlugin.py:346(JpegImageFile)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._mps_is_in_bad_fork}\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:479(__repr__)\n", + " 6 0.000 0.000 0.000 0.000 {built-in method _stat.S_ISDIR}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:206(_UnsupportedFxNodeAnalysis)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:254(_FindOpschemaMatchedSymbolicFunction)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:60(MutableLocal)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:80(BaseUserFunctionVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:684(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1910(PowerNorm)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:539(size)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1849(PatchCollection)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:82(adjust_compatible)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:781(get_subplotspec)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:258(_AxisWrapper)\n", + " 4 0.000 0.000 0.000 0.000 :2(__eq__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:207(Graph)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:186(_NoSymbolicFunctionForCallFunction)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:557(LargeProtobufExportOutputSerializer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:264(DuplicateWarningChecker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:413(ODictGetItemSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:869(NumpyNdarrayVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:576(NamedTupleVariable)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:611(_validate_minor_tick_ndivs)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:160(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:29(ScaleBase)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3476(Show)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:664(Vf)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:266(SliderBase)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:647()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/_common.py:6(weekday)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:874(tzrange)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1866(_SwitchableDateConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:449(RadialLocator)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method posix.register_at_fork}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/registration.py:18(ONNXFunction)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:347(ExceptionTableEntry)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1295()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:51(ValidateInStrings)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1568(Locator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/testing.py:20(reset_pyparsing_context)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:97(RasterParse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:28(LockDraw)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:328(_ttinfo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1707(MicrosecondLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:13(__call__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:305(rrule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:372(Line3DCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PpmImagePlugin.py:149(PpmPlainDecoder)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1319(disable)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:1029(unravel_index)\n", + " 4 0.000 0.000 0.000 0.000 {built-in method sys.audit}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:1004(FakeItemVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:126(ComptimeVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:809(NumpyVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:92(_StrongRef)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:285(add)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:123(FuncTransform)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1108(get_zorder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1370(OffsetFrom)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:75(VectorParse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:121(SubplotParams)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:129(_LazyModule)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:668(_register_loader)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:427(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:49(PatchedPropertyBag)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:369(FlattenInputWithTreeSpecValidationStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:914(Exporter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:202(SubConfigProxy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1711(numpy_method_wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:128(ReadsWrites)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:800(ExprCounter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:25(GuardFail)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:95(RandomValueSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:130(GlobalSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:173(AttrSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:390(SuperSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/constant.py:164(EnumVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:667(ListIteratorVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:25(MutableSideEffects)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:103(__eq__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:387(validate_fontstretch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/ElementTree.py:79(DefusedXMLParser)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:490(EnumType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:673(PyDecoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:722(PyEncoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:159(FuncScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2524(CloseMatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3543(WordStart)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5363(TokenConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colorbar.py:123(_ColorbarSpine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1186(add_callback)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1409(MouseEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:420(AxisScaleBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:179(FontMetrics)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:672(DejaVuFonts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1496(Kern)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:31()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1567(DraggableOffsetBox)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4002(set_navigate_mode)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:880(add_metaclass)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1315(_genitem)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:322(Grid)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:462(PathPatch3D)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:264(buffer_rgba)\n", + " 3 0.000 0.000 0.000 0.000 {method 'copy' of 'mappingproxy' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:336(NullContextVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1272(XMLPullParser)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2790(TransformedPatchPath)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2583(Sawtooth)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1206(Hlist)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:168(UnitData)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:656(ConciseDateFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1268(AutoDateLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:430(HandlerRegularPolyCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:118(NavigationToolbar2Mac)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:232(_BackendMac)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:845(_is_valid_dispatch_type)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:442(WithExitFunctionVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffTags.py:23(TagInfo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:601(PyCodec)\n", + " 2 0.000 0.000 0.000 0.000 {method 'pixel_access' of 'ImagingCore' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2299(Literal)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5430(Group)\n", + " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:20(_generate_next_value_)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1632(_draw)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1246(Event)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:211(FontInfo)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:81(get_projection_class)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:34(_axis_method_wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend.py:54(DraggableLegend)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:995(rrulewrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tricontour.py:8(TriContourSet)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:679(_register_writer)\n", + " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:680(decorator)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3986(set_navigate)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/function_base.py:1316(_diff_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 {method 'squeeze' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:189(ThreadFlowLocation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1730(numpy_operator_wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1834(_Anchors)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:75(Unsupported)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:257(NegateSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:367(TypeSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:626(SliceVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:421(CUDAStreamVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:56(ExternalReferenceForbidden)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:276(PngInfo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:628(LogitScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:125(LRUMemo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:33(get_fig_manager)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:38(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:487(SpinesProxy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3696(EllipseSelector)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:135(DecimalConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1253(tzical)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:156(GlobalWeakRefSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:250(AutogradFunctionVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:134(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1915(_Edge_integer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3405(GoToColumn)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:360(ToolQuit)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:37()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1098(AnchoredText)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:476(GridSpecFromSubplotSpec)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:310(ThetaTick)\n", + " 3 0.000 0.000 0.000 0.000 {method '__array_prepare__' of 'numpy.ndarray' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:343(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/patcher.py:19(ONNXTorchPatcher)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:72(int8)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:182(KeyErrorMsg)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:766(TypingVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:915(GrouperView)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:76(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:333(silent_list)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1991(BoundaryNorm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1105(_ListDataStream)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:2119(NoNorm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:310(FuncScaleLog)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpPaletteFile.py:22(GimpPaletteFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1687(FixedLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1833(MultipleLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:282(p0)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2472(CaselessLiteral)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/actions.py:7(OnlyOnce)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:304(ToolCursorPosition)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3221(set_history_buttons)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:120(Output)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1139(Accent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1010(Node)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1162(List)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1428(_GlueSpec)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:106(PlaceHolderLayoutEngine)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:110(AxesWidget)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:118(StrCategoryLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:108(MovedModule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:626(DateFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:521(HandlerErrorbar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1156(_DOF_estimator_min_E)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:628(HandlerStem)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:281(ThetaLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:548(RadialTick)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PpmImagePlugin.py:53(PpmImageFile)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:274(release)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:163(StackFrame)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_exporter_states.py:8(ExportTypes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:411(_reduce_op_symbolic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:67(GenericContextWrappingVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:6(Substitution)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:294(ArrayType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:328(StubImageFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2261(Token)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2397(LArrow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3762(Wedge)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1033(Box)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:420(PackerBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1071(_DOF_estimator_geom)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:380(StreamMask)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:38(UnsupportedOperatorError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:543(ProtobufExportOutputSerializer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:169(FixedPointBox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:23(MutableLocalBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:18(DummyModule)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:163(validate_dpi)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:64(_ArtistPropertiesSubstitution)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageMode.py:22(ModeDescriptor)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:224(RawFunctionType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:328(StructOrUnionOrEnum)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageSequence.py:19(Iterator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:355(StrMethodFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:270(FixedFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2872(AutoMinorLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:332(RubberbandBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:437(ToolYScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:600(ToolHome)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:609(ToolBack)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:939(ComputerModernFontConstants)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:713(DejaVuSerifFonts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:100(set_width_ratios)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:178(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1036(tzstr)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:398(HandlerLineCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trifinder.py:7(TriFinder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:166(HandlerNpoints)\n", + " 3 0.000 0.000 0.000 0.000 {built-in method atexit.register}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1630(_simple_enum)\n", + " 1 0.000 0.000 0.000 0.000 {method 'pop' of 'collections.OrderedDict' objects}\n", + " 1 0.000 0.000 0.000 0.000 :52(normcase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1257(_check_spec_arg_typos)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:2168(wrap_logical_op_with_cast_to)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:51(IndexExpression)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:125(UserError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:1391(suppress_torch_distributed_warnings)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:45(GuardedCode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:144(DummyGlobalSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:490(NumpyTensorSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:94(HasPostInit)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:313(WrappedUserMethodVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:18(DefusedXmlException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:178(UnknownIntegerType)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:96(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1658(IndexLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3569(WordEnd)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:155(Greek)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2284(NoMatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3483(LineEnd)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:845(get_animated)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:380(ToolGrid)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:934(ToolCopyToClipboardBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1448(Glue)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:7(SpecLoaderAdapter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:95(_TransformedBoundsLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1592(DraggableAnnotation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1589(ParserError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1501(YearLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:66(weekday)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:208(HandlerNpointsYoffsets)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:314(HandlerPatch)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:37()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:540(_BackendAgg)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:972(__set_name__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:59(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:87(ONNXFakeContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:536(CleanupManager)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:998(_recomputation_hook)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:884(NullVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:39(EntitiesForbidden)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_util.py:14(DeferredError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:72(BaseType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:89(LinearScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:262(NullFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2271(BlendedAffine2D)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:192(_should_enable_warnings)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:256(RecursiveGrammarException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:130(BasicMultilingualPlane)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3506(StringStart)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4443(_Indent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3511(BracketAB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1877(SubplotTool)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:217(update_nested_dict)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:876(AutoDateFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:42(BarContainer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:809(__members__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/context.py:264(RuntimeErrorWithDiagnostic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_exporter_states.py:17(SymbolicContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:174(BindInputStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:1043(OnnxExporterError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1689(numpy_to_tensor_wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:522(TupleComp)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:180(dynamo_timed)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:48(InvalidBackend)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:757(ExportResult)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1015(WrapHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:483(LambdaVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:85(VoidType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:192(UnknownFloatType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1092(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1100(_fdat)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:257(_set_locator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:164(UnboundedMemo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:143(LatinA)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3775(_ErrorStop)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3436(LineStart)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5467(Dict)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1275(BrokenBarHCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1089(get_label)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:148(SmallFilledCircles)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:29(ClabelText)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3484(ShowBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:370(ToolQuitAll)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:395(ToolMinorGrid)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:410(ToolFullScreen)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:447(ToolXScale)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:618(ToolForward)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2476(Round)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3674(Fancy)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1390(Rule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:13(ToolTriggerEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/__init__.py:8(_SubplotBaseMeta)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:572(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:199(__get_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:245(_MovedItems)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:91(_LazyDescr)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:8(_TzSingleton)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:18(ThetaFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:249(StreamplotSet)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:719(HandlerTuple)\n", + " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5602(postParse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:450(_create_exit_wrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1130(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:61(_create_beartype_decorator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:82(_NotProvided)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:152(name)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:353(TupleIteratorGetItemSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:440(NNModuleSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:615(PythonModuleVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:193(InlinedClosureVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:20(MatplotlibDeprecationWarning)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:85(List)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3523(StringEnd)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1378(_attr)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:130(_calculate_meta)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:421(_unwrap_partial)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1544(__repr__)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:465(_unary_dispatcher)\n", + " 1 0.000 0.000 0.000 0.000 {method 'popitem' of 'dict' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:26(InputAdaptStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:457(FlattenOutputWithTreeSpecValidationStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:167(ContextDecorator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:78(int16)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:269(reset)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:432(RunOnlyContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:441(DisableContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:141(GatherTraceback)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:99(OffloadWrapper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:506(ShapeEnvSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:38(AttributeMutation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:183(ClosureVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:282(__init__)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:341(validate_aspect)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementPath.py:350(_SelectorContext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:261(PointerType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:5(CDefError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpGradientFile.py:66(GradientFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:8(_lazyclassproperty)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:195(Cyrillic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:235(Kanji)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:254(Katakana)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:293(Thai)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2273(Empty)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4449(_IndentGreater)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:14(HorizontalHatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1484(PickEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:634(SaveFigureBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1629(Done)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:910(_JSONEncoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2325(Square)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3473(BracketA)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:731(DejaVuSansFonts)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:82(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:20(TraversableResourcesLoader)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:564(_LazyTickList)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:72(AxisInfo)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:144(MovedAttribute)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1839(ConciseDateConverter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:772(HandlerPolyCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:347(Collection3D)\n", + " 4 0.000 0.000 0.000 0.000 {method 'remove' of 'set' objects}\n", + " 1 0.000 0.000 0.000 0.000 {method 'isdisjoint' of 'set' objects}\n", + " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._dynamo.eval_frame.set_guard_error_hook}\n", + " 2 0.000 0.000 0.000 0.000 {built-in method matplotlib._c_internal_utils.display_is_valid}\n", + " 3 0.000 0.000 0.000 0.000 :2(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:346(ExecutableNotFoundError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:26(OnnxExporterError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:62(SymbolicValueError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:51(CallHintViolationWarning)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:495(ExportOutputSerializer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:1035(UnsatisfiedDependencyError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:81(OutputAdaptStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:228(LiftParametersAndBuffersIntoArgsStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:107(CondOpArgsMismatchError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:97(ArgsMismatchError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:85(LoggingTensorMode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:75(ProfilerStartHook)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:464(GlobalStateSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:330(WrappedUserFunctionVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/nn_module.py:780(FSDPManagedNNModuleVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:54(AttributeMutationNew)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:747(_DunderChecker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:223(deprecate_privatize_attribute)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:590(PyCodecState)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1732(NullLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:304(FuncFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:149(LatinB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:242(Hiragana)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:308(Hebrew)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4899(_NullToken)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:95(__iter__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:87(Shapes)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:132(SmallCircles)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:111(_Unset)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1288(DrawEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1315(ResizeEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3595(Simple)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2763(Arc3)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3434(Curve)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3573(CurveBracket)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1563(AutoWidthChar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:950(STIXFontConstants)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:4(ToolEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:467(VPacker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:340(Module_six_moves_urllib_parse)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1683(SecondLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:109(StemContainer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:241(ThetaFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trirefine.py:12(TriRefiner)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/BmpImagePlugin.py:362(DibImageFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py:1174(native_id)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:263(Invocation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:210(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:84(ProfilerEndHook)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:452(NotNNModuleSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:297(CondHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:48(AttributeMutationExisting)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:88(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1089(_idat)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:187(TickHelper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1046(LogFormatterMathtext)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:81(_UnboundedCache)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:208(Chinese)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:268(Hangul)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:322(Devanagari)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1533(KeyEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2905(Arc)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3492(BracketB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3551(BracketCurve)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1061(Hbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:161(Registry)\n", + " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:543(__enter__)\n", + " 2 0.000 0.000 0.000 0.000 {method 'toordinal' of 'datetime.date' objects}\n", + " 1 0.000 0.000 0.000 0.000 {method 'move_to_end' of 'collections.OrderedDict' objects}\n", + " 2 0.000 0.000 0.000 0.000 {method '__exit__' of 'posix.ScandirIterator' objects}\n", + " 1 0.000 0.000 0.000 0.000 {method 'append' of 'collections.deque' objects}\n", + " 1 0.000 0.000 0.000 0.000 {built-in method _elementtree._set_factories}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:47(inexact)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:210(MergeKwargsIntoArgsStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:307(RemoveNonTensorInputStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:84(int32)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:90(int64)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:99(uint8)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:114(float32)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:126(complex64)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:55(ResetRequired)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:67(BackendCompilerFailed)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:527(_NullDecorator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:1045(_checkpoint_hook)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:198(ParamBufferSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:458(FSDPNNModuleSource)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:202(NewCellVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:308(_deprecated_parameter_class)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:100(__call__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:50(_ArtistKwdocLoader)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:350(validate_fontsize_None)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/__init__.py:75(UnidentifiedImageError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:106(ParseError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:239(FunctionPtrType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:285(NamedPointerType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2852(AutoLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:220(ParseException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:136(Latin1)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:300(Arabic)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3398(PositionToken)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:48(NorthEastHatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:31(VerticalHatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:67(SouthEastHatch)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:9(HatchPatternBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:157(Stars)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:588(ViewsPositionsBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2642(Roundtooth)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2711(SimpleEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2348(Circle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2439(DArrow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2534(Round4)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2801(Angle3)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2841(Angle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3001(Bar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3533(BarAB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:782(Tfm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:959(STIXSansFontConstants)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1054(Vbox)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1476(HCentered)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1523(AutoHeightChar)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:20(ToolManagerMessageEvent)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:125(execute)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:499(HPacker)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:72(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:661(_result)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:373(_tzfile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:25(_TzOffsetFactory)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:55(_TzStrFactory)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1551(MonthLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1578(WeekdayLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1605(DayLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1633(HourLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1658(MinuteLocator)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1156(_tzicalvtzcomp)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:77(ErrorbarContainer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:275(HandlerLine2D)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1061(_DOF_estimator_user)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/BmpImagePlugin.py:288(BmpRleDecoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_util.py:22(AxisError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:249(ConvertComplexToRealRepresentationInputStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:281(RemoveNoneInputStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:411(FlattenOutputStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:108(float16)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:138(bool_)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:36(RestartAnalysis)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:567(ShapeVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:622(FunctorchGradHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:792(FunctorchVmapHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:207(NewGlobalVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:204(BaseFunctionType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:75(_tilesort)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:332(FormatStrFormatter)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4835(OneOrMore)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2429(RArrow)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1486(VCentered)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:19(_TzFactory)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:503(HandlerPathCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:16(TimerMac)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:968(ravel_multi_index)\n", + " 1 0.000 0.000 0.000 0.000 {method 'close' of 'generator' objects}\n", + " 2 0.000 0.000 0.000 0.000 {built-in method _stat.S_ISREG}\n", + " 1 0.000 0.000 0.000 0.000 :1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/linalg.py:13(LinAlgError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:39(number)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:20(OnnxExporterWarning)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:431(ConvertComplexToRealRepresentationOutputStep)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:120(float64)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:132(complex128)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:102(AttributeMutationError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:28(TorchDynamoException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:32(InternalTorchDynamoError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:716(_Handle)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:762(_CheckpointFrame)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:579(ExecutorchCallDelegateHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1142(ExportTracepointHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:148(_missing)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:55(InvalidVersion)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:2(FFIError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:17(VerificationError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:97(BasePrimitiveType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpGradientFile.py:104(GimpGradientFile)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1030(LogFormatterExponent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2607(BboxTransformToMaxOnly)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:25(NonIntersectingPathException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:102(_FifoCache)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2344(_SingleCharLiteral)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2853(_WordRegex)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4672(Located)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:140(LargeCircles)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1076(set_in_layout)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1223(_timer_set_single_shot)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:627(ConfigureSubplotsBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1420(Vrule)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:864(StixSansFonts)\n", + " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:69()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:438(TerminateTrajectory)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PpmImagePlugin.py:279(PpmDecoder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:729(getmro)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py:1590(main_thread)\n", + " 1 0.000 0.000 0.000 0.000 :1(__create_fn__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:43(integer)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:143(IncorrectUsage)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:994(_StopRecomputationError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:938(AutogradFunctionMethodHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1080(OutDtypeHigherOrderVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:897(DeletedVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/optimizer.py:17(ArgMappingException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:874(_ignorecase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1796(FuncNorm)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:85(DecompressionBombWarning)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2844(ImagePointHandler)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2853(ImageTransformHandler)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:22(VerificationMissing)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:28(PkgConfigError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:482(StructType)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:486(UnionType)\n", + " 1 0.000 0.000 0.000 0.000 {method 'cleanup' of 'ImagingEncoder' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1093(LogFormatterSciNotation)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:8()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1335(CloseEvent)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3463(CurveFilledB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_blocking_input.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:52(ConversionError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/isoparser.py:43(__init__)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:402(Module_six_moves_urllib_request)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:454(Module_six_moves_urllib_response)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:513(HandlerCircleCollection)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:43(_is_wildcard_pattern)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/__init__.py:45()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:213(_join)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_util.py:26(UFuncTypeError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:63(complexfloating)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:24(_apply_params)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:40(SkipFrame)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:720(_Holder)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:35(UserDefinedVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:120(DelayGraphBreakVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/optimizer.py:21(GuardInstallException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:100(_disallow_in_graph_helper)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:240(ParseFatalException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:247(ParseSyntaxException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:290(CJK)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/_version.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2574(NonGuiException)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:382(Module_six_moves_urllib_error)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:475(Module_six_moves_urllib_robotparser)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:434(InvalidIndexError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:510(OutOfBounds)\n", + " 2 0.000 0.000 0.000 0.000 {method '__prepare__' of 'type' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/collections/__init__.py:658(update)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:345(__enter__)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method _thread.get_native_id}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/__init__.py:222(is_initialized)\n", + " 1 0.000 0.000 0.000 0.000 {built-in method matplotlib.backends._macosx.event_loop_is_running}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:51(signedinteger)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:55(unsignedinteger)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:32(CheckerError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:59(floating)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:44(TorchRuntimeError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:93(RecompileError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:917(CheckpointError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:707(TupleIteratorVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:114(UnknownVariable)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:89(DecompressionBombError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_version.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:71(NotSupportedError)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/parsers/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:11(ExceptionWordUnicode)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1868(draw)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1498()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3443(CurveA)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3453(CurveAB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3458(CurveFilledA)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3468(CurveFilledAB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:970(DejaVuSansFontConstants)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/__init__.py:14(SubplotBase)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:239(exec_module)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1608(UnknownTimezoneWarning)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/__init__.py:11(DeprecatedTzFormatWarning)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3448(CurveB)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:966(DejaVuSerifFontConstants)\n", + " 1 0.000 0.000 0.000 0.000 {method 'islower' of 'bytes' objects}\n", + " 1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:249(_allowed_user_defined_function_ids)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:107(background_context)\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/backends/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/__init__.py:1()\n", + " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1220(_timer_set_interval)\n", + " 1 0.000 0.000 0.000 0.000 :1363(exec_module)\n", + "\n", + "\n" + ] + }, + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "pstats.Stats(str(latest_profile)).sort_stats(\"cumulative\").print_stats()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "e0d17747", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.2" + } + }, "nbformat": 4, "nbformat_minor": 5 } diff --git a/lab/profiling.ipynb b/lab/profiling.ipynb index ce65cc0..bd12232 100644 --- a/lab/profiling.ipynb +++ b/lab/profiling.ipynb @@ -48,9 +48,11 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": 9, "id": "635d44c1", - "metadata": {}, + "metadata": { + "scrolled": true + }, "outputs": [ { "name": "stdout", @@ -4370,10 +4372,10 @@ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 6, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } diff --git a/placement.py b/placement.py index ed66914..61c8b2b 100644 --- a/placement.py +++ b/placement.py @@ -45,8 +45,10 @@ import torch.optim as optim from arg_parse_util import parse_args +from loss_tracking_utils import save_loss_history_csv from profiler_helper import run_with_optional_profile +torch.manual_seed(66) # Feature index enums for cleaner code access class CellFeatureIdx(IntEnum): @@ -247,6 +249,11 @@ def generate_placement_input(num_macros, num_std_cells): return cell_features, pin_features, edge_list + +def total_wire_length(cell_features, pin_features, edge_list): + # the real goal seem to be to reduce the total wirelength. + # attraction loss can be a training method. + return 0 # ======= OPTIMIZATION CODE (edit this part) ======= def wirelength_attraction_loss(cell_features, pin_features, edge_list): @@ -304,8 +311,9 @@ def wirelength_attraction_loss(cell_features, pin_features, edge_list): # Total wirelength total_wirelength = torch.sum(smooth_manhattan) - - return total_wirelength / edge_list.shape[0] # Normalize by number of edges + ret = total_wirelength / edge_list.shape[0] # Normalize by number of edges + # print(ret.shape) + return ret def overlap_repulsion_loss(cell_features, pin_features, edge_list): @@ -352,9 +360,51 @@ def overlap_repulsion_loss(cell_features, pin_features, edge_list): Returns: Scalar loss value (should be 0 when no overlaps exist) """ + + N = cell_features.shape[0] if N <= 1: return torch.tensor(0.0, requires_grad=True) + + x_col = cell_features[:, CellFeatureIdx.X] + y_col = cell_features[:, CellFeatureIdx.Y] + + x_delta = torch.abs(x_col.unsqueeze(1) - x_col.unsqueeze(0)) + y_delta = torch.abs(y_col.unsqueeze(1) - y_col.unsqueeze(0)) + + # print("x_delta", x_delta) + # print("x_delta shape", x_delta.shape) + + widths = cell_features[:, CellFeatureIdx.WIDTH] + widths_i = widths.unsqueeze(1) + widths_j = widths.unsqueeze(0) + # print("widths", widths) + # print("widths.shape",widths.shape) + + heights = cell_features[:, CellFeatureIdx.HEIGHT] + heights_i = heights.unsqueeze(1) + heights_j = heights.unsqueeze(0) + # print("heights", heights) + # print("heights_i shape", heights_i.shape) + + x_span = (widths_i + widths_j) / 2 + y_span = (heights_i + heights_j) / 2 + + # print("x span", x_span) + # print("y span", y_span) + + + overlap_x = torch.relu(x_span - x_delta) + overlap_y = torch.relu(y_span - y_delta) + + # print("overlap_x", overlap_x) + # print("overlap_y", overlap_y) + + ret = torch.sum(overlap_x @ overlap_y) + + + + return ret # TODO: Implement overlap detection and loss calculation here # @@ -373,10 +423,10 @@ def train_placement( cell_features, pin_features, edge_list, - num_epochs=1000, - lr=0.01, - lambda_wirelength=1.0, - lambda_overlap=10.0, + num_epochs=10000, + lr=0.1, + lambda_wirelength=3.0, + lambda_overlap=1.0, verbose=True, log_interval=100, ): @@ -409,6 +459,7 @@ def train_placement( # Create optimizer optimizer = optim.Adam([cell_positions], lr=lr) + optim.lr_scheduler.ReduceLROnPlateau(optimizer=optimizer) # Track loss history loss_history = { @@ -419,6 +470,7 @@ def train_placement( # Training loop for epoch in range(num_epochs): + optimizer.zero_grad() # Create cell_features with current positions @@ -729,7 +781,7 @@ def main(): # Generate placement problem num_macros = 3 - num_std_cells = 50 + num_std_cells = 10 print(f"Generating placement problem:") print(f" - {num_macros} macros") @@ -770,6 +822,8 @@ def main(): verbose=True, log_interval=200, ) + loss_history_path = save_loss_history_csv(result["loss_history"], OUTPUT_DIR) + print(f"Loss history saved to: {loss_history_path}") # Calculate final metrics (both detailed and normalized) print("\n" + "=" * 70) From 2b20e4721b4ba6dd149b9ef17bd958a59b0d533f Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 19 Apr 2026 15:29:35 -0700 Subject: [PATCH 03/48] pytorch has elementwise mat mul built in --- placement.py | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/placement.py b/placement.py index 61c8b2b..70f4c78 100644 --- a/placement.py +++ b/placement.py @@ -400,11 +400,11 @@ def overlap_repulsion_loss(cell_features, pin_features, edge_list): # print("overlap_x", overlap_x) # print("overlap_y", overlap_y) - ret = torch.sum(overlap_x @ overlap_y) + pairwise_overlap_area = overlap_x * overlap_y + mask = torch.triu(torch.ones_like(pairwise_overlap_area), diagonal=1) + loss = torch.sum(pairwise_overlap_area * mask) - - - return ret + return loss # TODO: Implement overlap detection and loss calculation here # @@ -466,6 +466,9 @@ def train_placement( "total_loss": [], "wirelength_loss": [], "overlap_loss": [], + "overlap_count": [], + "total_overlap_area": [], + "max_overlap_area": [], } # Training loop @@ -497,10 +500,19 @@ def train_placement( # Update positions optimizer.step() + updated_cell_features = cell_features.clone() + updated_cell_features[:, 2:4] = cell_positions.detach() + overlap_metrics = calculate_overlap_metrics(updated_cell_features) + # Record losses loss_history["total_loss"].append(total_loss.item()) loss_history["wirelength_loss"].append(wl_loss.item()) loss_history["overlap_loss"].append(overlap_loss.item()) + loss_history["overlap_count"].append(overlap_metrics["overlap_count"]) + loss_history["total_overlap_area"].append( + overlap_metrics["total_overlap_area"] + ) + loss_history["max_overlap_area"].append(overlap_metrics["max_overlap_area"]) # Log progress if verbose and (epoch % log_interval == 0 or epoch == num_epochs - 1): @@ -508,6 +520,10 @@ def train_placement( print(f" Total Loss: {total_loss.item():.6f}") print(f" Wirelength Loss: {wl_loss.item():.6f}") print(f" Overlap Loss: {overlap_loss.item():.6f}") + print(f" Overlap Count: {overlap_metrics['overlap_count']}") + print( + f" Total Overlap Area: {overlap_metrics['total_overlap_area']:.6f}" + ) # Create final cell features final_cell_features = cell_features.clone() From 76dd19c1180e0f0e38c8b6783de6e198848ac479 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 19 Apr 2026 16:19:01 -0700 Subject: [PATCH 04/48] add per test case loss tracking --- .gitignore | 3 +- .../profiling-checkpoint.ipynb | 4417 ----------------- placement.py | 25 + test.py | 16 +- 4 files changed, 41 insertions(+), 4420 deletions(-) delete mode 100644 lab/.ipynb_checkpoints/profiling-checkpoint.ipynb diff --git a/.gitignore b/.gitignore index 6dbcb7f..4218587 100644 --- a/.gitignore +++ b/.gitignore @@ -4,6 +4,7 @@ *.gif *.bmp -*.ipynb_checkpoints/* +*/.ipynb_checkpoints/* profile/* +loss_history/* **/__pycache__/** \ No newline at end of file diff --git a/lab/.ipynb_checkpoints/profiling-checkpoint.ipynb b/lab/.ipynb_checkpoints/profiling-checkpoint.ipynb deleted file mode 100644 index bd12232..0000000 --- a/lab/.ipynb_checkpoints/profiling-checkpoint.ipynb +++ /dev/null @@ -1,4417 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "id": "16fc7e3c-465e-4189-86d0-54a1f6c5e169", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Latest profile: /Users/vrajpandya/repo/intern_challenge/profile/profile_20260418_091607.prof\n" - ] - } - ], - "source": [ - "from pathlib import Path\n", - "import pstats\n", - "\n", - "profile_dir = (Path.cwd() / \"..\" / \"profile\").resolve()\n" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "efbaba45", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Latest profile: /Users/vrajpandya/repo/intern_challenge/profile/profile_20260418_091607.prof\n" - ] - } - ], - "source": [ - "# reload latest profile\n", - "profiles = sorted(profile_dir.glob(\"*.prof\"), key=lambda path: path.stat().st_mtime)\n", - "\n", - "if not profiles:\n", - " raise FileNotFoundError(f\"No .prof files found in {profile_dir}\")\n", - "\n", - "latest_profile = profiles[-1]\n", - "print(f\"Latest profile: {latest_profile}\")\n" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "id": "635d44c1", - "metadata": { - "scrolled": true - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Sat Apr 18 09:16:07 2026 /Users/vrajpandya/repo/intern_challenge/profile/profile_20260418_091607.prof\n", - "\n", - " 2875198 function calls (2837522 primitive calls) in 1.650 seconds\n", - "\n", - " Ordered by: cumulative time\n", - "\n", - " ncalls tottime percall cumtime percall filename:lineno(function)\n", - " 1 0.000 0.000 1.651 1.651 /Users/vrajpandya/repo/intern_challenge/placement.py:716(main)\n", - " 1 0.001 0.001 0.917 0.917 /Users/vrajpandya/repo/intern_challenge/placement.py:638(plot_placement)\n", - " 1 0.028 0.028 0.688 0.688 /Users/vrajpandya/repo/intern_challenge/placement.py:369(train_placement)\n", - " 375/8 0.001 0.000 0.631 0.079 :1167(_find_and_load)\n", - " 371/8 0.001 0.000 0.631 0.079 :1122(_find_and_load_unlocked)\n", - " 362/9 0.001 0.000 0.630 0.070 :666(_load_unlocked)\n", - " 350/9 0.000 0.000 0.630 0.070 :934(exec_module)\n", - " 944/13 0.000 0.000 0.629 0.048 :233(_call_with_frames_removed)\n", - " 806/9 0.020 0.000 0.626 0.070 {built-in method builtins.exec}\n", - " 189/16 0.000 0.000 0.477 0.030 {built-in method builtins.__import__}\n", - " 452/47 0.001 0.000 0.461 0.010 :1209(_handle_fromlist)\n", - " 1001 0.001 0.000 0.331 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_compile.py:20(inner)\n", - " 1 0.000 0.000 0.330 0.330 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1129(savefig)\n", - " 1 0.000 0.000 0.330 0.330 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3234(savefig)\n", - " 1 0.000 0.000 0.330 0.330 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2052(print_figure)\n", - " 1 0.000 0.000 0.294 0.294 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:15(__init__)\n", - " 1 0.000 0.000 0.294 0.294 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:239(__init__)\n", - " 1 0.000 0.000 0.293 0.293 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/__init__.py:1()\n", - " 1 0.000 0.000 0.239 0.239 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1()\n", - " 2 0.000 0.000 0.230 0.115 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2043()\n", - " 2 0.000 0.000 0.230 0.115 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:450(print_png)\n", - " 2 0.000 0.000 0.230 0.115 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:440(_print_pil)\n", - "1305/1164 0.009 0.000 0.199 0.000 {built-in method builtins.__build_class__}\n", - " 1 0.000 0.000 0.166 0.166 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1531(imsave)\n", - " 1 0.000 0.000 0.165 0.165 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2346(save)\n", - " 1 0.000 0.000 0.160 0.160 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1242(_save)\n", - " 1 0.000 0.000 0.160 0.160 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:499(_save)\n", - " 1 0.000 0.000 0.160 0.160 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:527(_encode_tile)\n", - " 2 0.160 0.080 0.160 0.080 {method 'encode' of 'ImagingEncoder' objects}\n", - " 105 0.000 0.000 0.145 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:159(_update_set_signature_and_docstring)\n", - " 104 0.000 0.000 0.143 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:126(__init_subclass__)\n", - " 1000 0.001 0.000 0.141 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:433(backward)\n", - " 1 0.000 0.000 0.140 0.140 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1459(subplots)\n", - " 1000 0.002 0.000 0.140 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/__init__.py:149(backward)\n", - " 1000 0.135 0.000 0.135 0.000 {method 'run_backward' of 'torch._C._EngineBase' objects}\n", - " 1 0.000 0.000 0.134 0.134 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:1()\n", - " 1 0.000 0.000 0.134 0.134 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:101(inner)\n", - " 2 0.000 0.000 0.134 0.067 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:82(remove)\n", - " 4/3 0.000 0.000 0.134 0.045 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:63(__call__)\n", - " 1 0.000 0.000 0.134 0.134 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:149(_allowed_function_ids)\n", - " 585/2 0.023 0.000 0.131 0.065 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:188(_find_torch_objects)\n", - " 7/3 0.000 0.000 0.130 0.043 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:443(wrapper)\n", - " 6 0.000 0.000 0.122 0.020 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4338(get_tightbbox)\n", - " 1 0.000 0.000 0.120 0.120 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1()\n", - " 1 0.000 0.000 0.114 0.114 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:1()\n", - " 117 0.000 0.000 0.113 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1837(kwdoc)\n", - " 350 0.001 0.000 0.110 0.000 :1007(get_code)\n", - " 2 0.000 0.000 0.102 0.051 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:93(draw_wrapper)\n", - " 592/2 0.001 0.000 0.102 0.051 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:54(draw_wrapper)\n", - " 2 0.000 0.000 0.102 0.051 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3134(draw)\n", - " 6/2 0.000 0.000 0.100 0.050 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:114(_draw_list_compositing_images)\n", - " 4 0.000 0.000 0.100 0.025 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3005(draw)\n", - " 1001 0.059 0.000 0.100 0.000 /Users/vrajpandya/repo/intern_challenge/placement.py:252(wirelength_attraction_loss)\n", - " 117 0.002 0.000 0.097 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1598(pprint_setters)\n", - " 14/10 0.000 0.000 0.096 0.010 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1404(_get_tightbbox_for_layout_only)\n", - " 22 0.000 0.000 0.095 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1320(get_tightbbox)\n", - " 1 0.000 0.000 0.095 0.095 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colorbar.py:1()\n", - " 1 0.000 0.000 0.094 0.094 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:777(figure)\n", - " 1 0.000 0.000 0.094 0.094 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:462(new_figure_manager)\n", - " 1 0.000 0.000 0.092 0.092 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:1()\n", - " 1 0.000 0.000 0.086 0.086 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3404(new_figure_manager)\n", - " 1 0.000 0.000 0.086 0.086 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3413(new_figure_manager_given_figure)\n", - " 1 0.000 0.000 0.086 0.086 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1774(new_manager)\n", - " 1 0.042 0.042 0.086 0.086 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2682(create_with_canvas)\n", - " 1 0.000 0.000 0.085 0.085 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1()\n", - " 122 0.002 0.000 0.083 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1270(_update_ticks)\n", - " 4252 0.006 0.000 0.080 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1470(get_valid_values)\n", - " 1 0.000 0.000 0.074 0.074 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:2591(tight_layout)\n", - " 1 0.000 0.000 0.074 0.074 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3508(tight_layout)\n", - " 1 0.000 0.000 0.074 0.074 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:163(execute)\n", - " 1 0.000 0.000 0.072 0.072 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:194(get_tight_layout_figure)\n", - " 1 0.000 0.000 0.072 0.072 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:20(_auto_adjust_subplotpars)\n", - " 15841 0.011 0.000 0.071 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:157(_is_allowed_module_prefix)\n", - " 9 0.000 0.000 0.068 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/__init__.py:108(import_module)\n", - " 9 0.000 0.000 0.068 0.008 :1194(_gcd_import)\n", - " 1 0.000 0.000 0.067 0.067 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/__init__.py:1()\n", - " 1 0.000 0.000 0.066 0.066 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/convert_frame.py:1()\n", - " 2 0.000 0.000 0.064 0.032 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:381(draw)\n", - " 1 0.000 0.000 0.060 0.060 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:1()\n", - " 350 0.000 0.000 0.060 0.000 :1127(get_data)\n", - " 1 0.000 0.000 0.059 0.059 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config.py:1()\n", - " 7277 0.040 0.000 0.059 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:867(cleandoc)\n", - " 1 0.000 0.000 0.059 0.059 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1736(get_tightbbox)\n", - " 2 0.000 0.000 0.057 0.028 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/__init__.py:1820(__getattr__)\n", - " 1 0.000 0.000 0.057 0.057 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/__init__.py:1()\n", - " 7315 0.003 0.000 0.055 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:848(getdoc)\n", - " 1 0.000 0.000 0.054 0.054 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:1()\n", - " 350 0.049 0.000 0.049 0.000 {method 'read' of '_io.BufferedReader' objects}\n", - " 462 0.002 0.000 0.049 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:915(get_window_extent)\n", - " 1 0.000 0.000 0.049 0.049 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1()\n", - " 23961 0.011 0.000 0.046 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:973(getmodule)\n", - " 7505 0.003 0.000 0.046 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:272(_compile)\n", - " 1 0.000 0.000 0.046 0.046 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:799(subplots)\n", - " 1 0.000 0.000 0.046 0.046 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:264(subplots)\n", - " 2 0.000 0.000 0.046 0.023 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:658(add_subplot)\n", - " 2 0.000 0.000 0.046 0.023 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:569(__init__)\n", - " 350 0.000 0.000 0.045 0.000 :727(_compile_bytecode)\n", - " 1000 0.003 0.000 0.045 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:356(wrapper)\n", - " 350 0.045 0.000 0.045 0.000 {built-in method marshal.loads}\n", - " 8 0.000 0.000 0.044 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1379(draw)\n", - " 1 0.000 0.000 0.043 0.043 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1()\n", - " 189 0.000 0.000 0.042 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:738(compile)\n", - " 10 0.000 0.000 0.041 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2943(_update_title_position)\n", - " 440 0.005 0.000 0.040 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:358(_get_layout)\n", - " 1 0.022 0.022 0.040 0.040 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:152(__init__)\n", - " 60 0.000 0.000 0.039 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1311(_get_ticklabel_bboxes)\n", - " 1 0.000 0.000 0.039 0.039 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:1()\n", - " 60 0.000 0.000 0.039 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1315()\n", - " 1 0.000 0.000 0.039 0.039 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1()\n", - " 1 0.000 0.000 0.038 0.038 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/__init__.py:1()\n", - " 1 0.000 0.000 0.038 0.038 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_axes.py:1()\n", - " 1000 0.008 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/nn/utils/clip_grad.py:12(clip_grad_norm_)\n", - " 123 0.000 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1209(wrap)\n", - " 8766 0.003 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:936(getsourcefile)\n", - " 223 0.000 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1422(__init__)\n", - " 123 0.003 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:884(_process_class)\n", - " 234 0.000 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:579(draw)\n", - " 223 0.006 0.000 0.037 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1442(get_aliases)\n", - " 1 0.000 0.000 0.037 0.037 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:1()\n", - " 1 0.000 0.000 0.036 0.036 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/__init__.py:1()\n", - " 62 0.001 0.000 0.036 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:142(get_window_extent)\n", - " 20 0.000 0.000 0.036 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2599(_update_label_position)\n", - " 30 0.000 0.000 0.036 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2143(_get_tick_boxes_siblings)\n", - " 1 0.000 0.000 0.036 0.036 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1()\n", - " 16993 0.009 0.000 0.035 0.000 {built-in method builtins.any}\n", - " 1000 0.002 0.000 0.034 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:58(_use_grad)\n", - " 1 0.000 0.000 0.034 0.034 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:1()\n", - " 1 0.000 0.000 0.034 0.034 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:1()\n", - " 106 0.000 0.000 0.033 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2376(add_patch)\n", - " 117 0.000 0.000 0.032 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:48(__init__)\n", - " 1 0.000 0.000 0.032 0.032 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/formatter.py:1()\n", - " 362 0.000 0.000 0.032 0.000 :566(module_from_spec)\n", - "12203/9731 0.005 0.000 0.031 0.000 {built-in method numpy.core._multiarray_umath.implement_array_function}\n", - " 1 0.000 0.000 0.031 0.031 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/__init__.py:1()\n", - " 1001 0.031 0.000 0.031 0.000 {built-in method torch.logsumexp}\n", - " 1000 0.002 0.000 0.031 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:130(step)\n", - " 1882 0.001 0.000 0.031 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:268(to_rgba)\n", - " 1 0.014 0.014 0.031 0.031 /Users/vrajpandya/repo/intern_challenge/placement.py:91(generate_placement_input)\n", - " 1 0.000 0.000 0.030 0.030 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:1()\n", - " 1 0.000 0.000 0.030 0.030 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1()\n", - " 93 0.000 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:350(get_tightbbox)\n", - " 189 0.000 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:970(parse)\n", - " 40 0.000 0.000 0.029 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:225(compile)\n", - " 123 0.000 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1192(dataclass)\n", - " 8780 0.003 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/package/package_importer.py:692(_patched_getfile)\n", - " 383/189 0.001 0.000 0.029 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:447(_parse_sub)\n", - " 553/192 0.011 0.000 0.028 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:507(_parse)\n", - " 2 0.000 0.000 0.028 0.014 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1198(_gen_axes_spines)\n", - " 2 0.000 0.000 0.028 0.014 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1213()\n", - " 8 0.000 0.000 0.028 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:432(linear_spine)\n", - " 8 0.000 0.000 0.028 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:35(__init__)\n", - " 233 0.000 0.000 0.028 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:340(_set_facecolor)\n", - " 127 0.000 0.000 0.028 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:347(set_facecolor)\n", - " 7764 0.001 0.000 0.028 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:961(getabsfile)\n", - " 28 0.028 0.001 0.028 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:364(by_key)\n", - " 1 0.000 0.000 0.027 0.027 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/__init__.py:1()\n", - " 1 0.000 0.000 0.027 0.027 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1()\n", - " 10 0.000 0.000 0.027 0.003 :1231(create_module)\n", - " 10 0.027 0.003 0.027 0.003 {built-in method _imp.create_dynamic}\n", - " 106 0.001 0.000 0.027 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2389(_update_patch_limits)\n", - " 1 0.000 0.000 0.026 0.026 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axes3d.py:1()\n", - " 1 0.000 0.000 0.026 0.026 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1()\n", - " 244 0.000 0.000 0.026 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2138(__call__)\n", - " 1000 0.002 0.000 0.025 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:254(adam)\n", - " 1 0.000 0.000 0.025 0.025 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:1()\n", - " 19 0.000 0.000 0.025 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:190(add)\n", - " 5 0.000 0.000 0.024 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:185(_recompile_re)\n", - " 8780 0.011 0.000 0.024 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:896(getfile)\n", - " 223 0.008 0.000 0.024 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1517(get_setters)\n", - " 122 0.000 0.000 0.024 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1606(get_major_ticks)\n", - " 244 0.000 0.000 0.024 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2142(tick_values)\n", - " 234 0.001 0.000 0.023 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:530(_draw_paths_with_artist_properties)\n", - " 121853 0.015 0.000 0.023 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:183()\n", - " 5768 0.002 0.000 0.022 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:173(search)\n", - " 37 0.000 0.000 0.022 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1555(_get_tick)\n", - " 900 0.001 0.000 0.022 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:65(_get_text_metrics_with_cache)\n", - " 10 0.000 0.000 0.022 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2358(_update_label_position)\n", - " 244 0.003 0.000 0.022 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2077(_raw_ticks)\n", - " 9 0.000 0.000 0.022 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:729(__init_subclass__)\n", - " 388 0.002 0.000 0.021 0.000 :1056(_find_spec)\n", - " 455 0.001 0.000 0.021 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:413(_create_fn)\n", - " 1001 0.001 0.000 0.021 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:33(disable)\n", - " 597 0.001 0.000 0.020 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:259(get_transform)\n", - " 1000 0.008 0.000 0.020 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:330(_single_tensor_adam)\n", - " 142 0.000 0.000 0.020 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:95(draw_path)\n", - " 50 0.000 0.000 0.020 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:287(draw)\n", - " 142 0.017 0.000 0.019 0.000 {method 'draw_path' of 'matplotlib.backends._backend_agg.RendererAgg' objects}\n", - " 1 0.000 0.000 0.019 0.019 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_fontconfig_pattern.py:1()\n", - "281051/281043 0.016 0.000 0.019 0.000 {built-in method builtins.isinstance}\n", - " 1 0.000 0.000 0.019 0.019 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/__init__.py:1()\n", - " 122 0.001 0.000 0.019 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1497(get_minorticklocs)\n", - "6348/5165 0.002 0.000 0.018 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:289(wrapper)\n", - " 519 0.002 0.000 0.018 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:746(get_patch_transform)\n", - " 388 0.000 0.000 0.018 0.000 :1496(find_spec)\n", - " 388 0.001 0.000 0.018 0.000 :1464(_get_spec)\n", - " 1001 0.003 0.000 0.018 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:267(__call__)\n", - " 742 0.000 0.000 0.017 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3277(signature)\n", - " 742 0.000 0.000 0.017 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3023(from_callable)\n", - " 865/742 0.002 0.000 0.017 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2426(_signature_from_callable)\n", - " 4 0.015 0.004 0.017 0.004 /Users/vrajpandya/repo/intern_challenge/placement.py:470(calculate_overlap_metrics)\n", - " 37 0.001 0.000 0.016 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:65(__init__)\n", - " 136 0.000 0.000 0.016 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:38(__call__)\n", - " 499 0.002 0.000 0.016 0.000 :1604(find_spec)\n", - " 30 0.005 0.000 0.016 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:847(_rc_params_in_file)\n", - " 126/115 0.000 0.000 0.016 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:79(__call__)\n", - " 106981 0.010 0.000 0.015 0.000 {built-in method builtins.getattr}\n", - " 1001 0.002 0.000 0.015 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:307(_fn)\n", - " 2 0.000 0.000 0.015 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1381(clear)\n", - " 2 0.000 0.000 0.015 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1254(__clear)\n", - " 219049 0.015 0.000 0.015 0.000 {method 'startswith' of 'str' objects}\n", - " 1148 0.001 0.000 0.014 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1472(transform)\n", - " 1 0.000 0.000 0.013 0.013 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/__init__.py:1()\n", - " 1 0.000 0.000 0.013 0.013 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:1()\n", - " 122 0.000 0.000 0.013 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1493(get_majorticklocs)\n", - " 1 0.000 0.000 0.013 0.013 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:1()\n", - "2598/1427 0.004 0.000 0.013 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2431(get_affine)\n", - " 12 0.000 0.000 0.013 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:51(__missing__)\n", - " 223 0.008 0.000 0.013 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1453()\n", - " 1 0.000 0.000 0.012 0.012 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:1()\n", - " 133 0.000 0.000 0.012 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:651(union)\n", - " 189 0.000 0.000 0.012 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:571(_code)\n", - " 1 0.000 0.000 0.012 0.012 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2645(__init__)\n", - " 1 0.011 0.011 0.011 0.011 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:120(__init__)\n", - " 128 0.001 0.000 0.011 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:734(draw)\n", - " 19 0.000 0.000 0.011 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:412(__init__)\n", - " 2 0.000 0.000 0.011 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:206(read_style_directory)\n", - " 123 0.000 0.000 0.011 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:600(get_window_extent)\n", - " 456 0.011 0.000 0.011 0.000 {built-in method builtins.dir}\n", - " 1 0.000 0.000 0.011 0.011 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_axes.py:46(Axes)\n", - " 18 0.000 0.000 0.011 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:469(__init__)\n", - " 39 0.000 0.000 0.011 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:73(_get_text_metrics_with_cache_impl)\n", - " 39 0.000 0.000 0.011 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:208(get_text_width_height_descent)\n", - " 9940 0.010 0.000 0.010 0.000 {method 'search' of 're.Pattern' objects}\n", - " 244 0.000 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:213(format_ticks)\n", - " 1 0.000 0.000 0.010 0.010 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:1()\n", - " 123 0.001 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:528(_init_fn)\n", - " 804 0.002 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1176(_update_props)\n", - " 1059/189 0.005 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:37(_compile)\n", - " 1148 0.001 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2406(transform_affine)\n", - " 1000 0.003 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:776(zero_grad)\n", - " 150 0.001 0.000 0.010 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:738(draw)\n", - " 350 0.009 0.000 0.009 0.000 {built-in method io.open_code}\n", - " 695 0.003 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2331(_signature_from_function)\n", - " 1 0.000 0.000 0.009 0.009 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1()\n", - " 6334 0.005 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2683(__init__)\n", - " 260 0.000 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:225(__init__)\n", - " 4698 0.003 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:69(_wrapreduction)\n", - " 72 0.000 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1233(findfont)\n", - " 714 0.000 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1212(_internal_update)\n", - " 25 0.000 0.000 0.009 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1576(_copy_tick_props)\n", - " 260 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:306(_set_marker)\n", - " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/__init__.py:1()\n", - " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1()\n", - " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1()\n", - " 5085 0.004 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:66(copy)\n", - " 152 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2757(get_tick_space)\n", - " 9669 0.008 0.000 0.008 0.000 {method 'reduce' of 'numpy.ufunc' objects}\n", - " 350 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1418(__sub__)\n", - " 75 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1336(update_from)\n", - " 519 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:880(get_bbox)\n", - " 68 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:250(_prepare_font)\n", - " 2 0.002 0.001 0.008 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1393(_findfont_cached)\n", - " 492 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:147()\n", - " 2722 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1340(__add__)\n", - " 123 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:607(get_extents)\n", - " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:1()\n", - " 8 0.000 0.000 0.008 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4306(get_default_bbox_extra_artists)\n", - " 1000 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_contextlib.py:112(decorate_context)\n", - " 976 0.001 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:711(__setitem__)\n", - " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:439(_warn_if_gui_out_of_main_thread)\n", - " 3 0.000 0.000 0.008 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:270(_get_backend_mod)\n", - " 1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:1()\n", - " 2/1 0.000 0.000 0.008 0.008 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:284(switch_backend)\n", - " 492 0.000 0.000 0.008 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1223(set)\n", - " 8 0.000 0.000 0.008 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4335()\n", - " 111 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:287(__init__)\n", - " 122 0.000 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:699(set_locs)\n", - " 12751 0.004 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:741(__getitem__)\n", - "5559/5339 0.001 0.000 0.007 0.000 {built-in method builtins.next}\n", - " 1 0.000 0.000 0.007 0.007 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1()\n", - " 1 0.000 0.000 0.007 0.007 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_code_flow.py:1()\n", - " 464 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:860(_fully_clipped_to_axes)\n", - " 1294 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1106(get_points)\n", - " 2000 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/profiler.py:630(__enter__)\n", - " 36 0.000 0.000 0.007 0.000 :1655(_fill_cache)\n", - " 4675/75 0.003 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:128(deepcopy)\n", - " 12/8 0.000 0.000 0.007 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:575(__get__)\n", - "4816/4734 0.004 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:773(is_safe_constant)\n", - " 300/75 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:227(_deepcopy_dict)\n", - " 437 0.000 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1536(number_of_parameters)\n", - " 94 0.000 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1391(_preprocess_data)\n", - " 2722 0.001 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2498(composite_transform_factory)\n", - " 36 0.007 0.000 0.007 0.000 {built-in method posix.listdir}\n", - " 20 0.000 0.000 0.007 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:944(set_tick_params)\n", - " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1()\n", - " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:240(_check_versions)\n", - " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:1()\n", - " 2436 0.006 0.000 0.006 0.000 {built-in method posix.stat}\n", - " 1047 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:813(from_extents)\n", - " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow.py:1()\n", - " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_caffe2.py:1()\n", - " 954 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1542(is_alias)\n", - " 1913 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:51(_wrapfunc)\n", - "16691/13889 0.003 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:317(stale)\n", - " 32774 0.005 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:283(ismodule)\n", - " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:1()\n", - " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:1()\n", - " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:1()\n", - " 2257 0.004 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:35(update_wrapper)\n", - "155602/154398 0.006 0.000 0.006 0.000 {built-in method builtins.len}\n", - " 1 0.000 0.000 0.006 0.006 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/__init__.py:1()\n", - " 134 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:772(set_clip_path)\n", - " 2834 0.004 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:638(__hash__)\n", - " 626 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:508(update_position)\n", - "2760/2701 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:338(inner)\n", - " 105 0.001 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:170()\n", - " 6 0.000 0.000 0.006 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3157(grid)\n", - " 1908 0.002 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:259(_reconstruct)\n", - " 12 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1658(grid)\n", - " 1938 0.001 0.000 0.006 0.000 <__array_function__ internals>:177(amin)\n", - " 2000 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:687(__call__)\n", - " 1962 0.001 0.000 0.006 0.000 <__array_function__ internals>:177(amax)\n", - " 1 0.006 0.006 0.006 0.006 {built-in method set_icon}\n", - " 28626 0.004 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:162(__getitem__)\n", - " 123 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:624(_cmp_fn)\n", - " 106 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1400(contains_branch_seperately)\n", - " 88 0.000 0.000 0.006 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:104(__init__)\n", - "2488/2433 0.001 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:132(__enter__)\n", - " 106 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1381(contains_branch)\n", - " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow_location.py:1()\n", - " 2000 0.005 0.000 0.005 0.000 {built-in method torch._ops.profiler._record_function_enter_new}\n", - " 3798 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1889(__init__)\n", - " 68 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1303(_find_fonts_by_props)\n", - " 123 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:588(_repr_fn)\n", - " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_conversion.py:1()\n", - "17646/17633 0.004 0.000 0.005 0.000 {method 'join' of 'str' objects}\n", - " 15237 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:252(get)\n", - " 732 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2265(getter)\n", - " 2513 0.003 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:758(__init__)\n", - " 1118 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:899(copy)\n", - " 4 0.000 0.000 0.005 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:882(clear)\n", - " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:1()\n", - " 54891 0.005 0.000 0.005 0.000 {built-in method builtins.min}\n", - "5790/5337 0.002 0.000 0.005 0.000 {built-in method __new__ of type object at 0x1057ebd60}\n", - " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1()\n", - " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builtin.py:1()\n", - " 2000 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/profiler.py:636(__exit__)\n", - " 109 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:694(__init__)\n", - " 92 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2514(get_tick_space)\n", - " 848 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:374(extents)\n", - " 628 0.001 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:738(_convert_units)\n", - " 36 0.001 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:488(__new__)\n", - "1576/1574 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1777(__eq__)\n", - " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:1()\n", - " 2220 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2348(__init__)\n", - " 68 0.005 0.000 0.005 0.000 {method 'set_text' of 'matplotlib.ft2font.FT2Font' objects}\n", - " 4252 0.002 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1555(aliased_name)\n", - " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/textpath.py:1()\n", - " 842 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:847(viewLim)\n", - " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_properties.py:1()\n", - " 1 0.000 0.000 0.005 0.005 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/quiver.py:1()\n", - " 931 0.000 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:649(__eq__)\n", - " 1938 0.001 0.000 0.005 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2829(amin)\n", - " 4 0.000 0.000 0.005 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:794(_set_scale)\n", - " 4 0.000 0.000 0.004 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:103(set_default_locators_and_formatters)\n", - " 1908/848 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2391(_iter_break_from_left_to_right)\n", - " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:489(InstructionTranslatorBase)\n", - " 1026 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2969(__init__)\n", - " 1303 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:38(_wrapit)\n", - "5281/3214 0.001 0.000 0.004 0.000 {built-in method builtins.hash}\n", - " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/__init__.py:1()\n", - " 43052 0.004 0.000 0.004 0.000 {built-in method builtins.hasattr}\n", - " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/__init__.py:1()\n", - " 1962 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2703(amax)\n", - " 846 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:833(_unstale_viewLim)\n", - " 2000 0.002 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:46(_has_foreach_support)\n", - " 33 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:162(stack_op)\n", - " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:1()\n", - " 636 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:413(iter_bezier)\n", - " 137 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:666(recache)\n", - " 1 0.004 0.004 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:39(__init__)\n", - " 636 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:723(_get_field)\n", - " 362 0.001 0.000 0.004 0.000 :493(_init_module_attrs)\n", - " 4 0.000 0.000 0.004 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:425(__init__)\n", - " 4 0.000 0.000 0.004 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:537(set_useMathText)\n", - " 8861 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:691(__call__)\n", - " 1000 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:34(wrapped)\n", - " 1 0.000 0.000 0.004 0.004 /Users/vrajpandya/repo/intern_challenge/placement.py:586(calculate_normalized_metrics)\n", - " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/ElementTree.py:1()\n", - " 2001 0.004 0.000 0.004 0.000 {built-in method torch.stack}\n", - " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:1()\n", - " 76922 0.004 0.000 0.004 0.000 {method 'lstrip' of 'str' objects}\n", - " 410 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:447(update_position)\n", - " 1 0.004 0.004 0.004 0.004 /Users/vrajpandya/repo/intern_challenge/placement.py:541(calculate_cells_with_overlaps)\n", - " 2123 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1782(transform)\n", - " 1490/642 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2384(__eq__)\n", - " 7104 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1769(__init__)\n", - " 1000 0.004 0.000 0.004 0.000 {built-in method torch._foreach_norm}\n", - " 48 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1347(_add_data_doc)\n", - " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:1()\n", - " 341 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:595(__init__)\n", - "2488/2433 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:141(__exit__)\n", - " 109 0.004 0.000 0.004 0.000 {built-in method torch.rand}\n", - " 1404 0.000 0.000 0.004 0.000 :140(_path_stat)\n", - " 84433 0.004 0.000 0.004 0.000 {method 'append' of 'list' objects}\n", - " 256 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:463(transformed)\n", - " 1047 0.000 0.000 0.004 0.000 <__array_function__ internals>:177(reshape)\n", - " 1478 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:103(_stale_axes_callback)\n", - " 13069 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:690(_get)\n", - " 122 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:781(_set_format)\n", - " 122 0.000 0.000 0.004 0.000 <__array_function__ internals>:177(isclose)\n", - " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:321(preinit)\n", - " 1231/365 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:172(getwidth)\n", - " 846 0.001 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:836()\n", - " 522 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:804(from_bounds)\n", - " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1()\n", - " 18314 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:292(isclass)\n", - " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1()\n", - " 244 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1564(_get_tick_label_size)\n", - " 1 0.000 0.000 0.004 0.004 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/common.py:1()\n", - " 122 0.000 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:2278(isclose)\n", - " 4 0.000 0.000 0.004 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1108(set_clip_path)\n", - " 1000 0.003 0.000 0.004 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:911(__rdiv__)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/__init__.py:1()\n", - " 3 0.000 0.000 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:393(get_renderer)\n", - " 3 0.003 0.001 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:64(__init__)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/common.py:8(pyparsing_common)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1()\n", - " 4 0.000 0.000 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:87()\n", - " 4 0.000 0.000 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:75(_cmp_wrapper)\n", - " 18 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:799(validate_cycler)\n", - " 55889 0.003 0.000 0.003 0.000 {method 'get' of 'dict' objects}\n", - " 96 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:157(_reset_visual_defaults)\n", - " 700 0.001 0.000 0.003 0.000 :437(cache_from_source)\n", - " 2100 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1291(set_ydata)\n", - " 8 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:31(__call__)\n", - " 16 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:22(get_cls)\n", - " 1006 0.000 0.000 0.003 0.000 :16(exists)\n", - " 959 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1998(rotate_deg)\n", - " 29 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:187(draw_text)\n", - " 244 0.000 0.000 0.003 0.000 <__array_function__ internals>:177(clip)\n", - " 3091 0.003 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:182(set_children)\n", - " 2548 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2011(_setattr_cm)\n", - " 5120 0.001 0.000 0.003 0.000 :117(__instancecheck__)\n", - " 2002 0.003 0.000 0.003 0.000 {built-in method torch.abs}\n", - "4452/4450 0.001 0.000 0.003 0.000 {built-in method builtins.all}\n", - " 2/1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_jit_internal.py:478(fn)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/functional.py:970(_return_output)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/functional.py:740(_unique_impl)\n", - " 1 0.003 0.003 0.003 0.003 {built-in method unique_dim}\n", - " 10655 0.003 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:400(istype)\n", - " 1470 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:664(_is_type)\n", - " 9282 0.003 0.000 0.003 0.000 {method 'split' of 'str' objects}\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1()\n", - " 16172 0.003 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:231(__next)\n", - " 2846 0.001 0.000 0.003 0.000 :126(_path_join)\n", - " 453 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:237(__set_name__)\n", - " 1003 0.003 0.000 0.003 0.000 {built-in method torch.tensor}\n", - " 244 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2111(clip)\n", - " 3314 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:158(invalidate)\n", - " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:220(extract_stack)\n", - " 1000 0.001 0.000 0.003 0.000 /Users/vrajpandya/repo/intern_challenge/placement.py:308(overlap_repulsion_loss)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:1()\n", - " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:375(extract)\n", - " 2246 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1849(transform_affine)\n", - " 123 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1593(transform_path)\n", - " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:397(_extract_from_extended_frame_gen)\n", - " 3 0.000 0.000 0.003 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2211(__init_subclass__)\n", - " 1906 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:416(pchanged)\n", - " 530 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:208(__call__)\n", - " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2253(pprint_styles)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:92(_disallowed_function_ids)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1728(get_default_bbox_extra_artists)\n", - " 1604 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1758(convert_units)\n", - " 1047 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:198(reshape)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/table.py:1()\n", - " 760 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:302(xmin)\n", - " 244 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:216()\n", - " 83 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:316(line)\n", - " 1000 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:109(_default_to_fused_or_foreach)\n", - " 810 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:317(ymax)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_result.py:1()\n", - " 394 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:99(__init__)\n", - " 21 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:26(getline)\n", - " 176 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:94(closegroup)\n", - " 21 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:36(getlines)\n", - " 1000 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/__init__.py:56(_make_grads)\n", - " 1000 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:34(_group_tensors_by_device_and_dtype)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:1()\n", - " 11 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:80(updatecache)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool.py:1()\n", - " 2598 0.001 0.000 0.003 0.000 <__array_function__ internals>:177(dot)\n", - " 165/106 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:461(__getitem__)\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:32(_gen_cmap_registry)\n", - " 33 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2315(_signature_from_builtin)\n", - " 1885 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:269(convert_xunits)\n", - " 13322 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:170(append)\n", - " 2489 0.001 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:287(helper)\n", - " 790 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:307(ymin)\n", - " 959 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1975(rotate)\n", - " 33 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2172(_signature_fromstr)\n", - " 760 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:312(xmax)\n", - " 12 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1076(parse_string)\n", - " 18136 0.002 0.000 0.003 0.000 {built-in method builtins.max}\n", - " 6 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2257()\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend.py:1()\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact.py:1()\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1()\n", - " 1 0.000 0.000 0.003 0.003 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1()\n", - " 131 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:239(__array__)\n", - " 1000 0.002 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:80(_init_group)\n", - " 424 0.000 0.000 0.003 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1710(__eq__)\n", - " 133 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:656()\n", - " 4000 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/grad_mode.py:182(__init__)\n", - " 123 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1602(transform_path_affine)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_secondary_axes.py:1()\n", - " 61 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(isin)\n", - " 15841 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:176()\n", - " 44125 0.002 0.000 0.002 0.000 {built-in method builtins.id}\n", - " 1604 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:56(_is_natively_supported)\n", - " 243 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1333(__init__)\n", - " 9181 0.002 0.000 0.002 0.000 {method 'copy' of 'numpy.ndarray' objects}\n", - " 61 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:766(isin)\n", - " 424 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2162(__eq__)\n", - " 1921 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:285(process)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:1()\n", - " 710 0.000 0.000 0.002 0.000 :392(cached)\n", - " 999 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:572(__call__)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:1()\n", - " 530 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:199(__init__)\n", - " 1883 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:281(convert_yunits)\n", - " 61 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(in1d)\n", - " 1452 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1270(set_xdata)\n", - " 5120 0.001 0.000 0.002 0.000 {built-in method _abc._abc_instancecheck}\n", - " 133 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:657()\n", - " 582 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1743(normalize_kwargs)\n", - " 1324 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:68(_stale_figure_callback)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_run.py:1()\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:1()\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool_component.py:1()\n", - " 2000 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:447(__call__)\n", - " 244 0.000 0.000 0.002 0.000 {method 'clip' of 'numpy.ndarray' objects}\n", - " 388 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:690(new_gc)\n", - " 12104 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:113(__init__)\n", - " 61 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:524(in1d)\n", - " 15818 0.002 0.000 0.002 0.000 {built-in method builtins.setattr}\n", - " 105 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:638(Union)\n", - " 133 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:658()\n", - " 45 0.001 0.000 0.002 0.000 {built-in method builtins.eval}\n", - " 582 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:356(__setitem__)\n", - " 133 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:659()\n", - " 68 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1525(get_font)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:1()\n", - " 1001 0.002 0.000 0.002 0.000 {built-in method torch.sum}\n", - " 244 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:127(_clip)\n", - " 1745 0.002 0.000 0.002 0.000 {built-in method torch.randint}\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mathtext.py:1()\n", - " 360 0.000 0.000 0.002 0.000 :567(_get_cached)\n", - " 388 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:766(__init__)\n", - " 122 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:2359(within_tol)\n", - " 13 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:401(validate_font_properties)\n", - " 10 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_fontconfig_pattern.py:80(parse_fontconfig_pattern)\n", - " 1581 0.000 0.000 0.002 0.000 {method 'all' of 'numpy.ndarray' objects}\n", - " 668 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(all)\n", - " 631 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:221(is_color_like)\n", - " 7289 0.002 0.000 0.002 0.000 {method 'expandtabs' of 'str' objects}\n", - " 5903 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/function_base.py:346(iterable)\n", - " 90 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:194(update)\n", - " 28 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:599(_frozen_get_del_attr)\n", - " 10878 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:378(isfunction)\n", - " 790 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1115(score_family)\n", - " 549 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:168(_type_check)\n", - " 409 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:307(validate_color)\n", - " 2000 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/profiler.py:619(__init__)\n", - " 110 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1229(_cm_set)\n", - " 1167 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2043(scale)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/parsers/expat.py:1()\n", - " 7583 0.002 0.000 0.002 0.000 {built-in method numpy.asarray}\n", - " 1 0.002 0.002 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1493(_get_font)\n", - " 571 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:296(wrapper)\n", - " 1634 0.000 0.000 0.002 0.000 {method 'max' of 'numpy.ndarray' objects}\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_invocation.py:1()\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:1()\n", - " 306/12 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:776(_parseNoCache)\n", - "4747/3314 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:167(_invalidate_internal)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/kiwisolver/__init__.py:1()\n", - " 4284 0.002 0.000 0.002 0.000 {built-in method numpy.array}\n", - " 72/12 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3861(parseImpl)\n", - " 6510 0.002 0.000 0.002 0.000 {method 'item' of 'torch._C._TensorBase' objects}\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/__init__.py:1()\n", - "2195/2193 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2592(get_matrix)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:1()\n", - " 1000 0.002 0.000 0.002 0.000 {method 'mul_' of 'torch._C._TensorBase' objects}\n", - " 122 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:708(_compute_offset)\n", - " 189 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:509(_compile_info)\n", - " 3003 0.002 0.000 0.002 0.000 {method 'long' of 'torch._C._TensorBase' objects}\n", - " 53 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:662(intersection)\n", - " 111 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:88(f)\n", - " 1000 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_contextlib.py:141(clone)\n", - " 2489 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:104(__init__)\n", - " 9 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5392(__init__)\n", - " 1768 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:909(get_siblings)\n", - " 2000 0.002 0.000 0.002 0.000 {built-in method torch._ops.profiler.}\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_location.py:1()\n", - " 371 0.000 0.000 0.002 0.000 :169(__enter__)\n", - " 360 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:180(__init__)\n", - " 29/8 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4379(leave_whitespace)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/fft.py:1()\n", - " 2000/493 0.000 0.000 0.002 0.000 :121(__subclasscheck__)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1564(_load_fontmanager)\n", - " 1000 0.002 0.000 0.002 0.000 {built-in method torch.clamp}\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:1()\n", - " 8821 0.002 0.000 0.002 0.000 {method 'format' of 'str' objects}\n", - " 1141 0.000 0.000 0.002 0.000 {method 'min' of 'numpy.ndarray' objects}\n", - " 8765 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:456(istraceback)\n", - " 9122 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:300(ismethod)\n", - " 1000 0.002 0.000 0.002 0.000 {method 'addcmul_' of 'torch._C._TensorBase' objects}\n", - " 1000 0.002 0.000 0.002 0.000 {method 'add_' of 'torch._C._TensorBase' objects}\n", - " 1000 0.002 0.000 0.002 0.000 {built-in method torch._foreach_mul_}\n", - " 1581 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:61(_all)\n", - " 2674 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:405(_strip_comment)\n", - " 106 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2491(update_datalim)\n", - " 32 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1036(from_list)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tricontour.py:1()\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_address.py:1()\n", - " 75 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:279(__deepcopy__)\n", - " 482 0.000 0.000 0.002 0.000 :159(_path_isfile)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:970(json_load)\n", - " 409 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:499(copy)\n", - " 2000/493 0.001 0.000 0.002 0.000 {built-in method _abc._abc_subclasscheck}\n", - " 1004 0.002 0.000 0.002 0.000 {method 'clone' of 'torch._C._TensorBase' objects}\n", - " 36 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:347(_apply_params)\n", - " 122 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:747(_set_order_of_magnitude)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/__init__.py:274(load)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:157(Version)\n", - " 8765 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:480(iscode)\n", - " 519 0.000 0.000 0.002 0.000 :150(_path_is_mode_type)\n", - " 309 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(column_stack)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/JpegImagePlugin.py:1()\n", - " 28 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:182(_collapse_string_to_ranges)\n", - " 11 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2815(__new__)\n", - " 366 0.000 0.000 0.002 0.000 <__array_function__ internals>:177(round_)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/__init__.py:1()\n", - " 1634 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:39(_amax)\n", - " 4698 0.002 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:70()\n", - " 668 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2432(all)\n", - " 8765 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:466(isframe)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:1()\n", - " 7 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:392(open)\n", - " 1000 0.002 0.000 0.002 0.000 {method 'lerp_' of 'torch._C._TensorBase' objects}\n", - " 2846 0.001 0.000 0.002 0.000 :128()\n", - " 1001 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:442(__init__)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2752(_get_renderer)\n", - " 59 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:678(Optional)\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1()\n", - " 999 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:514(_format_maybe_minus_and_locale)\n", - " 1329 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:966(_auto_draw_if_interactive)\n", - " 386 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:626(translated)\n", - " 8 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2678(__init__)\n", - " 3764 0.001 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:99(check_in_list)\n", - " 2 0.002 0.001 0.002 0.001 {method 'sum' of 'torch._C._TensorBase' objects}\n", - " 1 0.000 0.000 0.002 0.002 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:1()\n", - " 96 0.000 0.000 0.002 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1303(set_fontproperties)\n", - " 27 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/collections/__init__.py:348(namedtuple)\n", - " 90 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1201(update)\n", - " 241 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:279(validate_color_for_prop_cycle)\n", - " 2513 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:216(_is_nth_color)\n", - " 35 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:107()\n", - " 1141 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:43(_amin)\n", - " 790 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1191(score_weight)\n", - " 252 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2817(nonsingular)\n", - " 55/8 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3635(leave_whitespace)\n", - " 40 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:299(detect_encoding)\n", - " 999 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2897(_interval_contains_close)\n", - " 1000 0.001 0.000 0.001 0.000 {built-in method torch._C._linalg.linalg_vector_norm}\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/html/__init__.py:1()\n", - " 488 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:93(_clip_dep_is_scalar_nan)\n", - " 118 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3231(__str__)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/context.py:1()\n", - " 5578 0.001 0.000 0.001 0.000 {method 'match' of 're.Pattern' objects}\n", - " 790 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1173(score_stretch)\n", - " 882 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:64(check_isinstance)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:1()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_change.py:1()\n", - " 1000 0.001 0.000 0.001 0.000 {built-in method torch._C._group_tensors_by_device_and_dtype}\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:1()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:1()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/__init__.py:1()\n", - " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/grad_mode.py:78(__enter__)\n", - " 11 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2795(_make_nmtuple)\n", - " 5 0.001 0.000 0.001 0.000 {built-in method torch.sqrt}\n", - " 114/57 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3722(copy)\n", - " 1761 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1277(__setattr__)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axes3d.py:42(Axes3D)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives.py:1()\n", - " 36071 0.001 0.000 0.001 0.000 {built-in method builtins.callable}\n", - " 137 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(broadcast_arrays)\n", - " 584 0.001 0.000 0.001 0.000 :179(_get_module_lock)\n", - " 18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:662(cycler)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset11.py:1()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/__init__.py:299(loads)\n", - " 356 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:786(_finddoc)\n", - " 3 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:592(getmembers)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/decoder.py:332(decode)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/decoder.py:343(raw_decode)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:1()\n", - " 3 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:550(_getmembers)\n", - " 366 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3754(round_)\n", - " 42 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:323(read_or_stop)\n", - " 14 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:595(set_parse_action)\n", - " 1038 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2030(translate)\n", - " 19434 0.001 0.000 0.001 0.000 {method 'items' of 'dict' objects}\n", - " 9 0.001 0.000 0.001 0.000 {method 'readline' of '_io.BufferedReader' objects}\n", - " 394 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:794(unit)\n", - " 123 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1800(transform_path_affine)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1619(_get_renderer)\n", - " 33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2100(_signature_strip_non_python_syntax)\n", - " 388 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:923(_set_gc_clip)\n", - " 309 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/shape_base.py:612(column_stack)\n", - " 39 0.001 0.000 0.001 0.000 {built-in method io.open}\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5798()\n", - " 10 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2398(_update_offset_text_position)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/random.py:26(manual_seed)\n", - " 1332 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1285(is_interactive)\n", - " 1149 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:786(get_transform)\n", - " 99/33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:95(__call__)\n", - " 137 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:480(broadcast_arrays)\n", - " 1000 0.001 0.000 0.001 0.000 {method 'addcdiv_' of 'torch._C._TensorBase' objects}\n", - " 4811 0.001 0.000 0.001 0.000 {built-in method builtins.sorted}\n", - " 363 0.000 0.000 0.001 0.000 :1599(_get_spec)\n", - " 18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:262(_trim_arity)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:609(_ensure_mutable)\n", - " 98 0.000 0.000 0.001 0.000 :105(__new__)\n", - " 14 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:675()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:603(_copy)\n", - " 37 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1029(get_path)\n", - " 8859 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1096(__new__)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/deprecated.py:1()\n", - " 1 0.001 0.001 0.001 0.001 {method 'copy' of 'ImagingCore' objects}\n", - " 366 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(around)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1()\n", - " 518 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1279(_preprocess_math)\n", - " 106 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:930(update_from_data_xy)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/random.py:109(manual_seed_all)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/__init__.py:227(_lazy_call)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:213(format_stack)\n", - " 19 0.000 0.000 0.001 0.000 :73(find_spec)\n", - " 99/33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:346(__post_init__)\n", - " 700 0.000 0.000 0.001 0.000 :132(_path_split)\n", - "3360/2126 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2398()\n", - " 22 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4779(parseImpl)\n", - " 12 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:237(set_clip_path)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ndarray.py:1()\n", - " 860 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:735(unwrap)\n", - " 7 0.001 0.000 0.001 0.000 {method 'readlines' of '_io._IOBase' objects}\n", - " 462 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:890(get_unitless_position)\n", - "4867/4697 0.001 0.000 0.001 0.000 {method 'update' of 'dict' objects}\n", - " 396/33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:141(apply)\n", - " 1 0.001 0.001 0.001 0.001 {built-in method torch.full}\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/api.py:1()\n", - " 1060 0.001 0.000 0.001 0.000 {method 'outer' of 'numpy.ufunc' objects}\n", - " 636 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:347(iter_segments)\n", - " 114/57 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3724()\n", - " 67 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:128(deprecate)\n", - " 999 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:245(fix_minus)\n", - " 571 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:213(register)\n", - " 1000 0.001 0.000 0.001 0.000 {method 'sqrt' of 'torch._C._TensorBase' objects}\n", - " 13070 0.001 0.000 0.001 0.000 {function RcParams.__getitem__ at 0x13d5fd440}\n", - " 1000 0.001 0.000 0.001 0.000 {built-in method torch.ones_like}\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1()\n", - " 522 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2576(__init__)\n", - " 102 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1540(copy_with)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:20(Base)\n", - " 2 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:810(_init_axis)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:1()\n", - " 4345 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:198()\n", - " 2248 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1355(_iter_break_from_left_to_right)\n", - " 1151 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:163(match)\n", - " 1271 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:115(get_transform)\n", - " 3 0.001 0.000 0.001 0.000 {built-in method torch.cat}\n", - " 1001 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:221(__init__)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/jit_utils.py:1()\n", - " 55 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3643()\n", - " 61 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(intersect1d)\n", - " 118 0.001 0.000 0.001 0.000 {built-in method builtins.compile}\n", - " 175 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:310(_to_rgba_no_colorcycle)\n", - " 60 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1531(__getitem__)\n", - " 2246 0.001 0.000 0.001 0.000 {built-in method matplotlib._path.affine_transform}\n", - " 3000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:8(_get_foreach_kernels_supported_devices)\n", - " 388 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:934(set_clip_path)\n", - " 288 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_normalizations.py:189(normalizer)\n", - " 1148 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2411(transform_non_affine)\n", - " 2 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5684(srange)\n", - " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:84(_get_value)\n", - " 60 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:829(_open_file_or_url)\n", - " 394 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:132(check_shape)\n", - " 16 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:292(draw)\n", - " 193 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3039(replace)\n", - " 12 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1871(apply_aspect)\n", - " 266/157 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1857(name)\n", - " 536 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:368(bounds)\n", - " 166 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:615(_from_any)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:1()\n", - " 546 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:178(sub)\n", - " 61 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:373(intersect1d)\n", - " 1000 0.001 0.000 0.001 0.000 {method 'reciprocal' of 'torch._C._TensorBase' objects}\n", - " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:97(_dispatch_sqrt)\n", - " 222 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:647(set_data)\n", - " 350 0.000 0.000 0.001 0.000 :1146(path_stats)\n", - " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/nn/utils/clip_grad.py:46()\n", - " 394 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:202(_update_values)\n", - " 435 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:814(set_size)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:1()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_notification.py:1()\n", - " 243 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1238(__init__)\n", - " 215/110 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1832(default_name)\n", - " 4731 0.001 0.000 0.001 0.000 {built-in method numpy.asanyarray}\n", - " 288 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_normalizations.py:190(normalizer_inner)\n", - " 2152 0.001 0.000 0.001 0.000 :380(__eq__)\n", - " 457 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:928(_json_decode)\n", - " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/grad_mode.py:82(__exit__)\n", - " 76 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:239(_get_xy_display)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor.py:1()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/decomposition_table.py:1()\n", - " 7031 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1036(get_points)\n", - " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:309(_cuda_graph_capture_health_check)\n", - " 4008 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:946()\n", - " 42 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1615(__getitem__)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_replacement.py:1()\n", - " 4 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/library.py:42(__init__)\n", - " 454 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:433(_tokenize)\n", - " 106 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:374(set_alpha)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_attachment.py:1()\n", - " 695 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:167(get_annotations)\n", - " 392 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2770(__str__)\n", - " 603 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:159(_type_convert)\n", - " 106 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(vstack)\n", - " 366 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3245(around)\n", - " 74 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1183(set_marker)\n", - " 38/18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4373(parseImpl)\n", - " 9401 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:293(axes)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImagePalette.py:1()\n", - " 213 0.000 0.000 0.001 0.000 :216(_lock_unlock_module)\n", - " 18351 0.001 0.000 0.001 0.000 {built-in method builtins.abs}\n", - " 70 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:257(rename_parameter)\n", - " 363 0.000 0.000 0.001 0.000 :778(spec_from_file_location)\n", - " 100 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2746(_revalidate)\n", - " 26 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:416(make_keyword_only)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2973(frombuffer)\n", - " 359 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:730(set_figure)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_configuration_override.py:1()\n", - " 684/532 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2377(_invalidate_internal)\n", - " 185 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:257(_recache)\n", - " 256/18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:414(visit)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:1()\n", - " 654 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:449(_field_init)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:1()\n", - " 67 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1089(reversed)\n", - " 178 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1612(transform_path_non_affine)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2896(new)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_location.py:1()\n", - " 25/6 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3816(streamline)\n", - " 490 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(concatenate)\n", - " 256/18 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:420(generic_visit)\n", - " 582 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1782()\n", - " 5770 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1929(get_matrix)\n", - " 1000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/grad_mode.py:73(__init__)\n", - " 1 0.001 0.001 0.001 0.001 {built-in method PIL._imaging.fill}\n", - " 62 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1352(__add__)\n", - " 338 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:437(set_transform)\n", - " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/nn/utils/clip_grad.py:61()\n", - " 518 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(ndim)\n", - " 35/5 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3675(streamline)\n", - " 3500 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:189()\n", - " 2000 0.001 0.000 0.001 0.000 {method 'to' of 'torch._C._TensorBase' objects}\n", - " 9073 0.001 0.000 0.001 0.000 {method 'group' of 're.Match' objects}\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/registration.py:1()\n", - " 1464 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1203(set_y)\n", - " 74 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:241(_optimize_charset)\n", - " 726 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:367(_escape)\n", - " 26/14 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4108(parseImpl)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_common.py:1()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:1()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:1()\n", - " 1909 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1226(_is_dunder)\n", - " 3045 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3018()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_afm.py:1()\n", - " 3006 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:943()\n", - " 548 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:827(_set_new_attribute)\n", - " 350 0.000 0.000 0.001 0.000 :642(_classify_pyc)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_references.py:1()\n", - " 562 0.000 0.000 0.001 0.000 :1421(_path_importer_cache)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_stack.py:1()\n", - " 6758 0.001 0.000 0.001 0.000 {method 'endswith' of 'str' objects}\n", - " 1758 0.001 0.000 0.001 0.000 {method '__reduce_ex__' of 'object' objects}\n", - " 1027 0.001 0.000 0.001 0.000 {method 'detach' of 'torch._C._TensorBase' objects}\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/resume_execution.py:1()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_reference.py:1()\n", - " 2 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1369(make_dataclass)\n", - " 78 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:234(_adjust_location)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1()\n", - " 44 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:66(__set_name__)\n", - " 11 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2797()\n", - " 1012 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1337(_to_unmasked_float_array)\n", - " 67 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1108()\n", - " 78/4 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:909(_parseCache)\n", - " 790 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1107(_expand_aliases)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:648(make_html_tags)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:13(glob)\n", - " 2770 0.001 0.000 0.001 0.000 {method 'reshape' of 'numpy.ndarray' objects}\n", - " 122 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(unique)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:590(_makeTags)\n", - " 106 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:223(vstack)\n", - " 2714 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:185(is_consecutive)\n", - " 12 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:57()\n", - " 1768 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:451(get)\n", - " 350 0.000 0.000 0.001 0.000 :675(_validate_timestamp_pyc)\n", - " 34 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:60(_iglob)\n", - " 123 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2037(_signature_bound_method)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/__init__.py:1()\n", - " 32 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:409(to_rgba_array)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:1()\n", - " 6590 0.001 0.000 0.001 0.000 {built-in method builtins.iter}\n", - " 217 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:263(decorator)\n", - " 584 0.001 0.000 0.001 0.000 :100(acquire)\n", - " 63 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3783(__init__)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:1()\n", - " 63 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:818(__init__)\n", - " 4 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:647(__init__)\n", - " 219 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:240(_check_color_like)\n", - " 1030 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1192(set_x)\n", - " 27/7 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4409(streamline)\n", - " 4 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3316(tick_params)\n", - " 336 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:670()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:400(ParserElement)\n", - " 30 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:845(_hash_add)\n", - " 244 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:33(seterr)\n", - " 75 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:237(_deepcopy_method)\n", - " 8 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1189(_set_lim)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:1()\n", - " 584 0.001 0.000 0.001 0.000 :125(release)\n", - " 9571 0.001 0.000 0.001 0.000 {method 'pop' of 'list' objects}\n", - " 2000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:122()\n", - " 50 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:342(update_from)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_graph.py:1()\n", - " 123 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:228(_recursive_repr)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_content.py:1()\n", - " 112 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1171(_set_artist_props)\n", - " 125 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1155(update_from)\n", - " 1050 0.000 0.000 0.001 0.000 :84(_unpack_uint32)\n", - " 530 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:203()\n", - " 20 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4889(parseImpl)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2398(__init__)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:105(_glob1)\n", - " 123 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:573()\n", - " 900 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:264()\n", - " 151 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1001(set_alpha)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:1()\n", - " 1758 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copyreg.py:104(__newobj__)\n", - " 30 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:638(_hash_fn)\n", - " 244 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1904(scale_range)\n", - " 341 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:736(set_style)\n", - " 636 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:368(field)\n", - " 388 0.001 0.000 0.001 0.000 {method '__exit__' of '_io._IOBase' objects}\n", - " 106 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:470(cleaned)\n", - " 22 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4956(parseImpl)\n", - " 10 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2791(_generateDefaultName)\n", - " 195 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1110()\n", - " 371 0.000 0.000 0.001 0.000 :173(__exit__)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/__init__.py:1()\n", - " 3538/834 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:353(recursive_subclasses)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config.py:310()\n", - " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:39()\n", - " 120 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1181(set_position)\n", - " 2002 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:192(innermost_fn)\n", - " 4000 0.001 0.000 0.001 0.000 {built-in method torch._C._set_grad_enabled}\n", - " 95 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2257(p)\n", - " 122 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(ptp)\n", - " 378 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1504(__and__)\n", - " 629 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1324(is_math_text)\n", - " 356 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:776(_findclass)\n", - " 130 0.000 0.000 0.001 0.000 <__array_function__ internals>:177(any)\n", - " 15 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2792(charsAsStr)\n", - " 1511 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2123(transform)\n", - " 2 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2294(__init__)\n", - " 122 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:138(unique)\n", - " 384 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:162(_fast_from_codes_and_verts)\n", - " 4000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:49()\n", - " 44 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:51(__init__)\n", - " 2198 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:65(wraps)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/utils.py:1()\n", - " 15957 0.001 0.000 0.001 0.000 {built-in method builtins.ord}\n", - " 44 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1345()\n", - " 38 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1586(__getitem__)\n", - " 36 0.000 0.000 0.001 0.000 :1408(_path_hooks)\n", - " 1000 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_contextlib.py:149(__new__)\n", - " 420 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2214()\n", - " 483 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:722(set_family)\n", - " 33 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:364(_update_contains)\n", - " 16 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1126(_set_position)\n", - " 50 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:546()\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:8(adjust_bbox)\n", - " 9000 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_jit_internal.py:1109(is_scripting)\n", - " 341 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:749(set_variant)\n", - " 7930 0.001 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2736(name)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/__init__.py:1()\n", - " 530 0.000 0.000 0.001 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:283(axis_aligned_extrema)\n", - " 1 0.000 0.000 0.001 0.001 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:1()\n", - " 29 0.001 0.000 0.001 0.000 {method 'draw_glyphs_to_bitmap' of 'matplotlib.ft2font.FT2Font' objects}\n", - " 366 0.001 0.000 0.001 0.000 {method 'round' of 'numpy.ndarray' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:542(_AxesBase)\n", - " 247 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:245(_collect_parameters)\n", - " 79 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3601(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/test_operators.py:1()\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:726(_get_transformed_path)\n", - " 42 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2984(parseImpl)\n", - " 5354 0.000 0.000 0.000 0.000 {method 'find' of 'str' objects}\n", - " 244 0.000 0.000 0.000 0.000 {method 'sum' of 'numpy.ndarray' objects}\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:299(_apply)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:1()\n", - " 108 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:982(set_color)\n", - " 502 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:396(_simple)\n", - " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:440(_apply_tickdir)\n", - " 244 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(nonzero)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:1()\n", - " 2234 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1262(set_text)\n", - " 2399 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:247(match)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:1()\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:340(_broadcast_to)\n", - " 333 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1197(_set_markercolor)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:658(get_position)\n", - " 8634 0.000 0.000 0.000 0.000 {method 'rstrip' of 'str' objects}\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:497(_apply_tickdir)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1315(subplots_adjust)\n", - " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2770(get_transformed_path_and_affine)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_region.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes_impl.py:1()\n", - " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:473(__prepare__)\n", - " 2265 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:158(__len__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:175(_listdir)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:181(FigureBase)\n", - " 209 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1441(formatannotation)\n", - " 141 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1084(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_normalizations.py:1()\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:711(_transform_path)\n", - " 1213 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:450(get_transform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/make_functional.py:1()\n", - " 3031 0.000 0.000 0.000 0.000 :244(_verbose_message)\n", - " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1600(__getitem_inner__)\n", - " 225 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:455(__init__)\n", - " 233 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:314(_set_edgecolor)\n", - " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:141(_iterdir)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2532(__init__)\n", - " 5610 0.000 0.000 0.000 0.000 {method 'pop' of 'dict' objects}\n", - " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2759(get_transformed_points_and_affine)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:692()\n", - " 156/148 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:339(get_spine_transform)\n", - " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:33(parse)\n", - " 7100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2748(kind)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1138(set_linestyle)\n", - " 185 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:338(_set_artist_props)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:940(glob)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm_listed.py:1()\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2604(ptp)\n", - " 1599 0.000 0.000 0.000 0.000 {built-in method builtins.delattr}\n", - " 6000 0.000 0.000 0.000 0.000 {built-in method torch.is_grad_enabled}\n", - " 1554 0.000 0.000 0.000 0.000 :1032(__exit__)\n", - " 6495 0.000 0.000 0.000 0.000 {method '__contains__' of 'frozenset' objects}\n", - " 56 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:2081(getLogger)\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:430(__enter__)\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1054(set)\n", - " 1020 0.000 0.000 0.000 0.000 :405(parent)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:223(define_aliases)\n", - " 10/3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:14(__get__)\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:323(_unique1d)\n", - " 466 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:75(_scale_dashes)\n", - " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/nn/utils/clip_grad.py:39()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/torch.py:1()\n", - " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:47(_sum)\n", - " 4798 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1563()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1()\n", - " 598 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2255(get_affine)\n", - " 150 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1833(frozen)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:980(__iter__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:1()\n", - " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2333(any)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementPath.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/hooks.py:1()\n", - " 1554 0.000 0.000 0.000 0.000 :1028(__enter__)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:1603(_max_pool)\n", - " 92 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:788(frozen)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1053(set_color)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method torch.sin}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:1()\n", - " 6988 0.000 0.000 0.000 0.000 {method 'isidentifier' of 'str' objects}\n", - " 370 0.000 0.000 0.000 0.000 :71(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:1()\n", - " 1 0.000 0.000 0.000 0.000 {method 'unbind' of 'torch._C._TensorBase' objects}\n", - " 1 0.000 0.000 0.000 0.000 {method 'set_window_title' of '_macosx.FigureManager' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_exception.py:1()\n", - " 276 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:401(_tuple_str)\n", - " 3512 0.000 0.000 0.000 0.000 {built-in method builtins.issubclass}\n", - " 252 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:581(tiny)\n", - " 2000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/adam.py:296()\n", - " 8/4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:981(__get__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_web_request.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/ElementTree.py:36(_get_py3_cls)\n", - " 56 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1327(getLogger)\n", - " 370 0.000 0.000 0.000 0.000 :198(cb)\n", - " 199 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/__init__.py:253(escape)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_web_response.py:1()\n", - " 3384 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:837()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_result_provenance.py:1()\n", - " 12/5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4092(streamline)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2973(re_match)\n", - " 6109 0.000 0.000 0.000 0.000 {method 'add' of 'set' objects}\n", - " 518 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3152(ndim)\n", - " 132 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:430(visit_Constant)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_text_helpers.py:1()\n", - " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:159(add)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_rectangle.py:1()\n", - " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_foreach_utils.py:14(_get_fused_kernels_supported_devices)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2961(re)\n", - " 1 0.000 0.000 0.000 0.000 {method 'read' of '_io.TextIOWrapper' objects}\n", - " 260 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:282(_set_fillstyle)\n", - " 106 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(atleast_2d)\n", - " 1003 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:1002(__hash__)\n", - " 279 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2421(transform_path_non_affine)\n", - " 4001 0.000 0.000 0.000 0.000 {built-in method torch._C._get_privateuse1_backend_name}\n", - " 800 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:243(_keep_alive)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_stack_frame.py:1()\n", - " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:396(set_linestyle)\n", - " 432 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1289()\n", - " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:858(update_from_path)\n", - " 5533 0.000 0.000 0.000 0.000 {method 'values' of 'dict' objects}\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2536(_init)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1()\n", - " 94 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1095(set_fontsize)\n", - " 29 0.000 0.000 0.000 0.000 {method 'draw_text_image' of 'matplotlib.backends._backend_agg.RendererAgg' objects}\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:435(__exit__)\n", - " 148/39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1862(__str__)\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2731(__init__)\n", - " 970 0.000 0.000 0.000 0.000 {method 'flatten' of 'numpy.ndarray' objects}\n", - " 388 0.000 0.000 0.000 0.000 :922(find_spec)\n", - " 564 0.000 0.000 0.000 0.000 {method 'sub' of 're.Pattern' objects}\n", - " 106 0.000 0.000 0.000 0.000 {built-in method matplotlib._path.cleanup_path}\n", - " 1400 0.000 0.000 0.000 0.000 :134()\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:379(wrapper)\n", - " 3937 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:700(get_size)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_fontconfig_pattern.py:57(_make_fontconfig_parser)\n", - " 494 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:683(_get_wrapped_text)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_logical_location.py:1()\n", - " 127 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:329(set_edgecolor)\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:281(_ptp)\n", - " 64 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4349(__init__)\n", - " 804 0.000 0.000 0.000 0.000 {built-in method numpy.arange}\n", - " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:392(_fields_in_init_order)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_configuration.py:1()\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2298(_init)\n", - " 460 0.000 0.000 0.000 0.000 :60(isabs)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method utcfromtimestamp}\n", - " 175/95 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:909(get_xaxis_transform)\n", - " 278 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2222(transform_non_affine)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:144(get_grid_positions)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_prims/executor.py:1()\n", - " 1799 0.000 0.000 0.000 0.000 {method 'replace' of 'str' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:1()\n", - " 338 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1094(get_default_size)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_message.py:1()\n", - " 929 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2761(_set_dpi)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_version_control_details.py:1()\n", - " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1947(le)\n", - " 30 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(linspace)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_constrained_layout.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_graph_traversal.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_suppression.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:39(restore_bbox)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives.py:500(_register_ops)\n", - " 351 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:762(set_weight)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:732(set_transform)\n", - " 591 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:78(_is_private)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_edge.py:1()\n", - " 1279 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:284(tell)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:1()\n", - " 5650 0.000 0.000 0.000 0.000 {method 'strip' of 'str' objects}\n", - " 199 0.000 0.000 0.000 0.000 {method 'translate' of 'str' objects}\n", - " 512 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:341(intervaly)\n", - " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1624()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:18(_public_functions)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffTags.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:80(alphanums)\n", - " 917 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:755(_is_wrapper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_location_relationship.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_sarif_log.py:1()\n", - " 341 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:788(set_stretch)\n", - " 3191 0.000 0.000 0.000 0.000 {method 'setdefault' of 'dict' objects}\n", - " 530 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:831(__setattr__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_edge_traversal.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:1()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:274(clear)\n", - " 1150 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1851(_str_equal)\n", - " 2873 0.000 0.000 0.000 0.000 {method 'rpartition' of 'str' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_translation_metadata.py:1()\n", - " 2 0.000 0.000 0.000 0.000 {method 'clear' of 'matplotlib.backends._backend_agg.RendererAgg' objects}\n", - " 252 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:558(smallest_normal)\n", - " 67 0.000 0.000 0.000 0.000 {built-in method builtins.print}\n", - " 36 0.000 0.000 0.000 0.000 :1696(path_hook_for_FileFinder)\n", - " 25 0.000 0.000 0.000 0.000 {method 'draw_markers' of 'matplotlib.backends._backend_agg.RendererAgg' objects}\n", - " 3692 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:655(get_family)\n", - " 341 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:872(set_math_fontfamily)\n", - " 636/212 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2397()\n", - " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:1892(nonzero)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1062(close)\n", - " 166/90 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:989(get_yaxis_transform)\n", - " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1581(copy_with)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/function_base.py:23(linspace)\n", - " 636 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:287(__init__)\n", - " 72 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:945(_get_mixins_)\n", - " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:484(_parse_args)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:215(_get_draw_artists)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/html/entities.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:44(destroy)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_reference.py:1()\n", - " 92 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:235(frozen)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1857(get_data_ratio)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:70(alphas)\n", - " 141 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1536()\n", - " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:242(x0)\n", - " 284 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:625(get_snap)\n", - " 105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:301(_remove_dups_flatten)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:785(set_subplotspec)\n", - " 3624 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:677(get_variant)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool_component_reference.py:1()\n", - " 3624 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:671(get_style)\n", - " 3624 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:692(get_stretch)\n", - " 29 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:353(_select_from)\n", - " 2785 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:841(get_visible)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:55(_chars_for_ranges)\n", - " 801 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1467(debug)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_run_automation_details.py:1()\n", - " 516 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:350(width)\n", - " 84 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:244(make_alias)\n", - " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1027(set_linespacing)\n", - " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:135(__init__)\n", - " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:81(atleast_2d)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_property_bag.py:1()\n", - " 3624 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:683(get_weight)\n", - " 61 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(zeros_like)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_relationship.py:1()\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:504(_from_parts)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:169(destroy)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_physical_location.py:1()\n", - " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1954(ge)\n", - " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:434(_get_text1_transform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:155(MarkerStyle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:787(PyExprCSEPass)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1221(set_markerfacecolor)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_node.py:1()\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1526(__or__)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:868(__new__)\n", - " 188 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1246(set_verticalalignment)\n", - " 1134 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1345(__eq__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:805(copy)\n", - " 4005 0.000 0.000 0.000 0.000 {method 'values' of 'collections.OrderedDict' objects}\n", - " 83 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:361(decorator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/codegen.py:1()\n", - " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:919(set_capstyle)\n", - " 572 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:820(_set_qualname)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:844(_create_)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1416(ArtistInspector)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:14(install_config_module)\n", - " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:989(set_joinstyle)\n", - " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:937(get_xaxis_text1_transform)\n", - " 2144 0.000 0.000 0.000 0.000 :1103(__eq__)\n", - " 274 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1043(set_visible)\n", - " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:132(geterr)\n", - " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/textwrap.py:470(indent)\n", - " 1 0.000 0.000 0.000 0.000 {function FigureManagerMac.destroy at 0x13eb8d580}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/relativedelta.py:1()\n", - " 4000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_utils.py:841(is_compiling)\n", - " 798 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:966()\n", - " 3635 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1809(get_affine)\n", - " 4 0.000 0.000 0.000 0.000 {built-in method torch.zeros}\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:316(delete_parameter)\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2638(_update_offset_text_position)\n", - " 350 0.000 0.000 0.000 0.000 :599(_check_name_wrapper)\n", - " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1364()\n", - " 755 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2308(get_matrix)\n", - " 388 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/_distutils_hack/__init__.py:89(find_spec)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:491(_get_text1_transform)\n", - " 628 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:47(_is_dunder)\n", - " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:108(_clip_dep_invoke_with_casting)\n", - " 2598 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:740(dot)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_axes.py:104(set_title)\n", - " 1000 0.000 0.000 0.000 0.000 {built-in method torch.is_complex}\n", - " 2836 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:706(get_file)\n", - " 127 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:381(set_linewidth)\n", - " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_deprecation.py:20(decorator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:294()\n", - " 2022 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2758(_get_dpi)\n", - " 106 0.000 0.000 0.000 0.000 {built-in method matplotlib._path.update_path_extents}\n", - " 593 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:750(__delattr__)\n", - " 557 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:252(y0)\n", - " 474 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:37(_is_descriptor)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_multiformat_message_string.py:1()\n", - " 631 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:509(_init_param)\n", - " 1182 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:152()\n", - " 372 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:181(__init__)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1017(get_yaxis_text1_transform)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4084(__init__)\n", - " 494 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:284(get_rotation)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:1()\n", - " 3644 0.000 0.000 0.000 0.000 {method 'lower' of 'str' objects}\n", - " 1292 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:670(_set)\n", - " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:437(_get_text2_transform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:761(SetVariable)\n", - " 1797 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:425()\n", - " 2834 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:864(get_math_fontfamily)\n", - " 39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:56(parse_parts)\n", - " 600/586 0.000 0.000 0.000 0.000 {built-in method builtins.repr}\n", - " 3108 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:107(_copy_immutable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:1()\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:494(_get_text2_transform)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1630(make_norm_from_scale)\n", - " 413 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:356(height)\n", - " 127 0.000 0.000 0.000 0.000 {method 'any' of 'numpy.ndarray' objects}\n", - " 306 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:136(__new__)\n", - " 162 0.000 0.000 0.000 0.000 :71(join)\n", - " 1768 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:912()\n", - " 488 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1937(closeto)\n", - " 740 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1632(__eq__)\n", - " 769 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:192(__get__)\n", - " 385 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:734(get_path)\n", - " 1458 0.000 0.000 0.000 0.000 {method 'extend' of 'list' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:129()\n", - " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:963(get_xaxis_text2_transform)\n", - " 184 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2063(_signature_is_builtin)\n", - " 25 0.000 0.000 0.000 0.000 {method 'numpy' of 'torch._C._TensorBase' objects}\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:539(_get_data_path)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/library.py:65(define)\n", - " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:77(zeros_like)\n", - " 469 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:327(__set_name__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1814(Parser)\n", - " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3903(_generateDefaultName)\n", - " 6/3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:22(visit)\n", - " 14/12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1074(get_position)\n", - " 8 0.000 0.000 0.000 0.000 {built-in method torch._C.define}\n", - " 137 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:416(_broadcast_shape)\n", - " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2668(__init__)\n", - " 676 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:969(set_foreground)\n", - " 488 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:103(_clip_dep_is_byte_swapped)\n", - " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:260(contextmanager)\n", - " 86 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1112(set_zorder)\n", - " 152 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(result_type)\n", - " 2937 0.000 0.000 0.000 0.000 {method 'get' of 'mappingproxy' objects}\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1043(get_yaxis_text2_transform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_color_data.py:1()\n", - " 188 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:997(set_horizontalalignment)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method torch.cos}\n", - " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5368(__init__)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/textwrap.py:419(dedent)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3588(set_xlim)\n", - " 1666 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1758()\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:331(wrapper)\n", - " 1101 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:646(_is_classvar)\n", - " 176 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:82(opengroup)\n", - " 189 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:222(__init__)\n", - " 1258 0.000 0.000 0.000 0.000 {method 'count' of 'str' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_fix.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:133()\n", - " 322 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:332(intervalx)\n", - " 2002 0.000 0.000 0.000 0.000 {built-in method torch._C._dynamo.eval_frame.set_eval_frame}\n", - " 1001 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:205(check)\n", - " 1184 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:933(get_rasterized)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:982()\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1946(get_width_height)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4283(get_children)\n", - " 76 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:91()\n", - " 82 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2266(__init__)\n", - " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1324(__init_subclass__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:63()\n", - " 1071 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:109(__init__)\n", - " 3650 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copy.py:182(_deepcopy_atomic)\n", - " 591 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:58(_is_sunder)\n", - " 288 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:897(set_alpha)\n", - " 80 0.000 0.000 0.000 0.000 {method 'copy' of 'dict' objects}\n", - " 959 0.000 0.000 0.000 0.000 {method 'tolist' of 'numpy.ndarray' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:1()\n", - " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:287(deco_unary_ufunc)\n", - " 1785 0.000 0.000 0.000 0.000 {built-in method posix.fspath}\n", - " 387 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/textwrap.py:482(prefixed_lines)\n", - " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2915(__init__)\n", - " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:518(decorating_function)\n", - " 1101 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:654(_is_initvar)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/linalg.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffTags.py:419(_populate)\n", - " 342 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/ma/core.py:587(filled)\n", - " 90 0.000 0.000 0.000 0.000 {built-in method builtins.sum}\n", - " 170 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:89(__getitem__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2858(__init__)\n", - " 252 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:476(__new__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1()\n", - " 38 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:65(deco_binary_ufunc)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_special_locations.py:1()\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:191(_create_closed)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mlab.py:1()\n", - " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:559(_axis_map)\n", - " 2508 0.000 0.000 0.000 0.000 {built-in method _imp.release_lock}\n", - " 2508 0.000 0.000 0.000 0.000 {built-in method _imp.acquire_lock}\n", - " 2002 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:205(enable_dynamic)\n", - " 66 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:130(clone)\n", - " 265 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:410()\n", - " 1000 0.000 0.000 0.000 0.000 {built-in method torch._C._are_functorch_transforms_active}\n", - " 303 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:1297(_val_or_rc)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1974(__init__)\n", - " 145 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:894(_parse_flags)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1123(set_linewidth)\n", - " 348/264 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1351(__hash__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset8.py:1()\n", - " 390 0.000 0.000 0.000 0.000 :357(__init__)\n", - " 309 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/shape_base.py:608(_column_stack_dispatcher)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/isoparser.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GifImagePlugin.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:14(delimited_list)\n", - " 36 0.000 0.000 0.000 0.000 :1559(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2360(Figure)\n", - " 36 0.000 0.000 0.000 0.000 :1684()\n", - " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1009(_find_new_)\n", - " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:213(__getattr__)\n", - " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:354(get_transform)\n", - " 2000 0.000 0.000 0.000 0.000 {method '__exit__' of 'torch._C.DisableTorchFunctionSubclass' objects}\n", - " 127 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_methods.py:55(_any)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:61(JitScalarType)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2034(set_params)\n", - " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/library.py:86(impl)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:1()\n", - " 354 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1945(_signature_get_user_defined_method)\n", - " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:744(_get_axis_name)\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1214(set_rotation)\n", - " 36 0.000 0.000 0.000 0.000 :64(__init__)\n", - " 84 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3904()\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:183(__init__)\n", - " 125 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:453(set_capstyle)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:327(max)\n", - " 1666 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:211(vertices)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1437(__mul__)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1211(set_markeredgecolor)\n", - " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/backends/cuda/__init__.py:29(is_built)\n", - " 10 0.000 0.000 0.000 0.000 :1239(exec_module)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:737(_get_scale_docs)\n", - " 399 0.000 0.000 0.000 0.000 :180(_path_isabs)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1515(_set_title_offset_trans)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/isoparser.py:42(isoparser)\n", - " 228 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:33(_get_dash_pattern)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:100(OutputGraphState)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1407(set_dash_capstyle)\n", - " 192/186 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:434(_get_literal_prefix)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:1()\n", - " 730 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:79(groups)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:1345()\n", - " 1000 0.000 0.000 0.000 0.000 {method 'conj' of 'torch._C._TensorBase' objects}\n", - " 170 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:953(copy)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:819(set_figure)\n", - " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2315(__init__)\n", - " 2 0.000 0.000 0.000 0.000 :412(realpath)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:235()\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2485(get_ticks_position)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:213(_get_version)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1231(set_markerfacecoloralt)\n", - " 744 0.000 0.000 0.000 0.000 {built-in method _thread.allocate_lock}\n", - " 10 0.000 0.000 0.000 0.000 {built-in method _imp.exec_dynamic}\n", - " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:61(_module_dir)\n", - " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/__init__.py:139(_tensor_or_tensors_to_tuple)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/abc.py:1()\n", - " 1938 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2824(_amin_dispatcher)\n", - " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:457()\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2516(_process_unit_info)\n", - " 2000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/jit/__init__.py:124(annotate)\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:215(connect)\n", - " 1962 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2698(_amax_dispatcher)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/hooks.py:6(Hooks)\n", - " 472 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2678(get_matrix)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1()\n", - " 14 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5585(__init__)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2269(setter)\n", - " 200 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:164(_copy_docstring_and_deprecators)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:1()\n", - " 860 0.000 0.000 0.000 0.000 {method 'rfind' of 'str' objects}\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/deprecated.py:41(setup_docs)\n", - " 48 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:57(_strip_init_py)\n", - " 148 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1267(__getattr__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/fnmatch.py:48(filter)\n", - " 306/282 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:159(__init__)\n", - " 1233 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:78()\n", - " 152 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:565(__getitem__)\n", - " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:187(finalize)\n", - " 107 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:935(_check_for_existing_members_)\n", - " 151 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2075(_signature_is_functionlike)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1065(set_drawstyle)\n", - " 2862 0.000 0.000 0.000 0.000 {built-in method math.factorial}\n", - " 499 0.000 0.000 0.000 0.000 :67(_relax_case)\n", - " 2000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:141(graph_break)\n", - " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:548()\n", - " 698 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:255(iter_fields)\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:962(_get_markerfacecolor)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:514(_get_config_or_cache_dir)\n", - " 18 0.000 0.000 0.000 0.000 {built-in method _functools.reduce}\n", - " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:493(set_hatch)\n", - " 118 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:301(set_antialiased)\n", - " 1 0.000 0.000 0.000 0.000 /Users/vrajpandya/repo/intern_challenge/placement.py:210()\n", - " 582 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:69(_is_internal_class)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:595(OrtBackend)\n", - " 495 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2646(get_matrix)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/texmanager.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:1()\n", - " 415 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:207(_arrays_for_stack_dispatcher)\n", - " 72 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:981(_find_data_type_)\n", - " 2 0.000 0.000 0.000 0.000 :421(_joinrealpath)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/shlex.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:304(GPS)\n", - " 247 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1872(inverted)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:236()\n", - " 2002 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:188(nothing)\n", - " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:452(_no_nep50_warning)\n", - " 633 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:437(_field_assign)\n", - " 131 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1915(__eq__)\n", - " 12/2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1503(makeOptionalList)\n", - " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:408(tokenize)\n", - " 98 0.000 0.000 0.000 0.000 {built-in method _abc._abc_init}\n", - " 74 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1041(set_fontfamily)\n", - " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:384(_mk_bitmap)\n", - " 351 0.000 0.000 0.000 0.000 :48(_new_module)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend.py:342(Legend)\n", - " 632 0.000 0.000 0.000 0.000 :41(_get_sep)\n", - " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:562()\n", - " 170 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:771(__copy__)\n", - " 537 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:180(validator)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1359(set_dash_joinstyle)\n", - " 68 0.000 0.000 0.000 0.000 {method 'clear' of 'matplotlib.ft2font.FT2Font' objects}\n", - " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:744()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:1()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3822(set_ylim)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2202(_get_ticks_position)\n", - " 34 0.000 0.000 0.000 0.000 :229(expanduser)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:43(parse)\n", - " 60 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1317()\n", - " 1000 0.000 0.000 0.000 0.000 {built-in method math.sqrt}\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2013(_validate_steps)\n", - " 121 0.000 0.000 0.000 0.000 :319(decode)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1646(convert_class)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/backends/registry.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:344(Slider)\n", - " 1168 0.000 0.000 0.000 0.000 {method '__exit__' of '_thread.lock' objects}\n", - " 108 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:287(_deduplicate)\n", - " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:135(get_patch_transform)\n", - " 1038 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:767(rotation_point)\n", - " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2324(blended_transform_factory)\n", - " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:785(_set_tickdown)\n", - " 1101 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:660(_is_kw_only)\n", - " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:473(set_joinstyle)\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:273(__bool__)\n", - " 1338 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2119(get_matrix)\n", - " 183 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:668(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:281(_make_selector)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:238(Dvi)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1423(set_solid_capstyle)\n", - " 1128 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:904(get_text)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:1()\n", - " 801 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1734(isEnabledFor)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1663(__call__)\n", - " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:592()\n", - " 58 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:479(lru_cache)\n", - " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1378(_fixupParents)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_fontconfig_pattern.py:59(comma_separated)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:349(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:536(OrtBackendOptions)\n", - " 42 0.000 0.000 0.000 0.000 {method 'sort' of 'list' objects}\n", - " 60 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2752(replace)\n", - " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:45(allow_rasterization)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_color_data.py:989()\n", - " 215 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:19(is_public_function)\n", - " 58 0.000 0.000 0.000 0.000 :778(__contains__)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:49(make_function_id_set)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:415(cycler)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:467(__getitem__)\n", - " 378 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:568(isstring)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1375(set_solid_joinstyle)\n", - " 175 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:465(_get_charset_prefix)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:561(_setResultsName)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2941(_wait_cursor_for_draw_cm)\n", - " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1922(__init__)\n", - " 512 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:868(__eq__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:260(compile_pattern)\n", - " 137 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:538()\n", - " 1000 0.000 0.000 0.000 0.000 {built-in method torch._C._has_torch_function}\n", - " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:76(set_base)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3086(ArrowStyle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:1()\n", - " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1317(set_usetex)\n", - " 146 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffTags.py:26(__new__)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:765(_set_tickleft)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:171(GuardBuilder)\n", - " 1184 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:960(get_agg_filter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:588(matplotlib_fname)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1700(update_units)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:101(VariableTracker)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1392(__radd__)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:482(anchored)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:1()\n", - " 587 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:76(__getattr__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/fnmatch.py:38(_compile_pattern)\n", - " 522 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:298(axes)\n", - " 1050 0.000 0.000 0.000 0.000 {built-in method from_bytes}\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:687(Literal)\n", - " 64 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:536(__str__)\n", - " 94 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(copyto)\n", - " 1001 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:751(__init__)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:505(set_pickradius)\n", - " 1 0.000 0.000 0.000 0.000 {method 'throw' of 'generator' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset12.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/proj3d.py:1()\n", - " 2 0.000 0.000 0.000 0.000 {method 'set_cursor' of '_macosx.FigureCanvas' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext_data.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2802(NavigationToolbar2)\n", - " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1615(raise_if_exceeds)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:2533(SpanSelector)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/patcher.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:213(OutputGraph)\n", - " 16/8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:164(get_converter)\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4147(_generateDefaultName)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:1()\n", - " 17 0.000 0.000 0.000 0.000 {built-in method torch._C.impl}\n", - " 999 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:283(get_loc)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3005(set_size_inches)\n", - " 388 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:914(set_antialiased)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3497(get_xbound)\n", - " 440 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:246(_get_multialignment)\n", - " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:967(__init__)\n", - " 156/148 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:202(_ensure_position_is_set)\n", - " 1236 0.000 0.000 0.000 0.000 {built-in method _thread.get_ident}\n", - " 1000 0.000 0.000 0.000 0.000 {method 'numel' of 'torch._C._TensorBase' objects}\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2271()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2240(LogLocator)\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1189(reversed)\n", - " 23 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4948(__init__)\n", - " 1047 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:193(_reshape_dispatcher)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:474(_cycler)\n", - " 316 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:878(_convert_validator_spec)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:84(TransformNode)\n", - " 40 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1149(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/optimizer.py:1()\n", - " 32 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:497()\n", - " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:220(decorate)\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:75(_apply)\n", - " 68 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:42(get_hinting_flag)\n", - " 1056 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:223(codes)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1069(_update_transScale)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:615(RangeSlider)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:27(Collection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:1()\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1820(__init_subclass__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1341(TextBox)\n", - " 37 0.000 0.000 0.000 0.000 :164(_path_isdir)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:609(gen_candidates)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:450(DebugActions)\n", - " 1016 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1331(get_usetex)\n", - " 754 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:396()\n", - " 90 0.000 0.000 0.000 0.000 :878(__iter__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1181(_gen_axes_patch)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3547(get_xlim)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_result.py:28(Result)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:54(literal_eval)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:981(resolve)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:242(__set_name__)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5590(__add__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:118(pyparsing_unicode)\n", - " 32 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:667(__init__)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1719(set)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:38(Axis)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:43(Instruction)\n", - " 189 0.000 0.000 0.000 0.000 {built-in method _sre.compile}\n", - " 1001 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:754(__enter__)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:765(__truediv__)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:427(getArtifactLogger)\n", - " 988 0.000 0.000 0.000 0.000 {built-in method math.cos}\n", - " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4148()\n", - " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1447(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ndarray.py:174(ndarray)\n", - " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:779(_set_tickup)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2282(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:130(filterwarnings)\n", - " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:267(onnx_symbolic)\n", - " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:533(copy)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:716(ContourSet)\n", - " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:229(_connect_picklable)\n", - " 292 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:239(__iter__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageOps.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:596(Axis)\n", - " 120/78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1637(__hash__)\n", - " 388 0.000 0.000 0.000 0.000 {built-in method _imp.find_frozen}\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:59(FunctionIdSet)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/diagnostics.py:1()\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:206(_from_iter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_invocation.py:17(Invocation)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:101(resize)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:530(_make_child)\n", - " 1876 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:847()\n", - " 42 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:546(__fspath__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:873(_set_lim_and_transforms)\n", - " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:270(get_patch_transform)\n", - " 99 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builtin.py:396(__init__)\n", - " 90 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2218()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:294(HammerAxes)\n", - " 984 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3031(parameters)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:552(get_configdir)\n", - " 1017 0.000 0.000 0.000 0.000 {built-in method math.radians}\n", - " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:24(_prevent_rasterization)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:359(LightSource)\n", - " 1105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2214(cast)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:52(__init__)\n", - " 12 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(cumsum)\n", - " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1017()\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3750(get_ybound)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:771(_set_tickright)\n", - " 794 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1338()\n", - " 189 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:954(fix_flags)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_util.py:1()\n", - " 70 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:775(__getattr__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:246(AitoffAxes)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/nn_module.py:1()\n", - " 468 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:348()\n", - " 164 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:140(validate_bool)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:523(shrunk_to_aspect)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3738(LassoSelector)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:412(get_subplot_params)\n", - " 2075 0.000 0.000 0.000 0.000 {built-in method builtins.chr}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1518(_cached_realpath)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:72(ContourLabeler)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:413(LambertAxes)\n", - " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:132(__getstate__)\n", - " 244 0.000 0.000 0.000 0.000 {method 'nonzero' of 'numpy.ndarray' objects}\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1966(clear)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:341(MollweideAxes)\n", - " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:71(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/common.py:422()\n", - " 42 0.000 0.000 0.000 0.000 :771(get)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:4054(FancyArrowPatch)\n", - " 54 0.000 0.000 0.000 0.000 :674(__getitem__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/torch_version.py:59(_convert_to_version)\n", - " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:386()\n", - " 74 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:214(_compile_charset)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1908(_set_device_pixel_ratio)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:909(home)\n", - " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1031(get_hatch_path)\n", - " 39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2981(_generateDefaultName)\n", - " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:207(_apply_tickdir)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3800(get_ylim)\n", - " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:431(__iadd__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2106(IdentityTransform)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1241(set_markeredgewidth)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:1061()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1330(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1307(rruleset)\n", - " 32 0.000 0.000 0.000 0.000 :941(update)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:299(set_position)\n", - " 1004 0.000 0.000 0.000 0.000 {built-in method torch._C._has_torch_function_unary}\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1632(get_minor_ticks)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trifinder.py:1()\n", - " 350 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/textwrap.py:479(predicate)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2338(CompositeGenericTransform)\n", - " 988 0.000 0.000 0.000 0.000 {built-in method math.sin}\n", - " 353 0.000 0.000 0.000 0.000 :1097(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:58(_timelex)\n", - " 385 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:734(unit_rectangle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:78()\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4424()\n", - " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:150(ones)\n", - " 3 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(inv)\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:110(_weak_or_strong_ref)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:399(_patch_step_function)\n", - " 170 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:677(__init__)\n", - " 264 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:432()\n", - " 21/20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1640(__repr__)\n", - " 790 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1145(score_style)\n", - " 318 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:781(__iter__)\n", - " 754 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1101()\n", - " 61 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(empty_like)\n", - " 790 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1209(score_size)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1633(nonsingular)\n", - " 388 0.000 0.000 0.000 0.000 :748(find_spec)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/fx/passes/fake_tensor_prop.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:97()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:43(Tick)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2264()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/BmpImagePlugin.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:314(_POERules)\n", - " 176 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:429()\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:734(_get_shared_axes)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_prims/context.py:1()\n", - " 507 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:166(__setitem__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:32(GuardFn)\n", - " 24/23 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1475(__repr__)\n", - " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1609()\n", - " 192 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1773(__array__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1989(_switch_canvas_and_return_print_method)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:216(Line2D)\n", - " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:137(__setstate__)\n", - " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1043()\n", - " 1029 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2740(default)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:469(inv)\n", - " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1000(set_linewidth)\n", - " 134 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1862(_str_lower_equal)\n", - " 46 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:110(__init__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1679(_make_norm_from_scale)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1078(putchunk)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:353(profile_hook_step)\n", - " 492 0.000 0.000 0.000 0.000 {built-in method builtins.divmod}\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:64()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/make_functional.py:254(FunctionalModuleWithBuffers)\n", - " 860 0.000 0.000 0.000 0.000 {built-in method sys.getrecursionlimit}\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1043(_translate_tick_params)\n", - " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:218(_vhstack_dispatcher)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3807(FancyBboxPatch)\n", - " 371 0.000 0.000 0.000 0.000 :165(__init__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1284(__instancecheck__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1773(__class_getitem__)\n", - " 385 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:542()\n", - " 67/55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:224(_type_repr)\n", - " 22 0.000 0.000 0.000 0.000 :162(find_spec)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3814(PolygonSelector)\n", - " 1000 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:340(_optimizer_step_code)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2293(BoxStyle)\n", - " 668 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2427(_all_dispatcher)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:651(cache)\n", - " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2011(__init_subclass__)\n", - " 663 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:892(get_clip_path)\n", - " 326 0.000 0.000 0.000 0.000 {built-in method sys.intern}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:1()\n", - " 732 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3241(_around_dispatcher)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1547(__subclasscheck__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:29(Cursors)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1573(get_matrix)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:670(Rectangle)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2523(cumsum)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:745(_draw_disabled)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:1()\n", - " 494 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:601(get_wrap)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3569(_validate_converted_limits)\n", - " 494 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:292(get_transform_rotates_text)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2243(mpl_connect)\n", - " 790 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1162(score_variant)\n", - " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:344(__len__)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1256(set_markersize)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset17.py:1()\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1737(__call__)\n", - " 1001 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:757(__exit__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1259(Arrow)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2658(ConnectionStyle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_reductions_impl.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/mps/__init__.py:42(manual_seed)\n", - " 125 0.000 0.000 0.000 0.000 {method '__deepcopy__' of 'numpy.ndarray' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:128()\n", - " 67 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:191(__getitem__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:199(VariableBuilder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:85(identchars)\n", - " 58 0.000 0.000 0.000 0.000 {built-in method builtins.round}\n", - " 105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1443(repl)\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/linalg.py:33(linalg_errors)\n", - " 51 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:394()\n", - " 488 0.000 0.000 0.000 0.000 {built-in method math.log10}\n", - " 189 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:73(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset7.py:1()\n", - " 262 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:124()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:571(get_cachedir)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:4394(ConnectionPatch)\n", - " 244 0.000 0.000 0.000 0.000 {built-in method numpy.seterrobj}\n", - " 530 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:242(degree)\n", - " 154 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:757(preParse)\n", - " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:195(_set_labelrotation)\n", - " 440 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:317(get_rotation_mode)\n", - " 222 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1329()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:1()\n", - " 121 0.000 0.000 0.000 0.000 {built-in method _codecs.utf_8_decode}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset14.py:1()\n", - " 23 0.000 0.000 0.000 0.000 {built-in method posix.lstat}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/mps/__init__.py:15(_get_default_mps_generator)\n", - " 52 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3819()\n", - " 790 0.000 0.000 0.000 0.000 {built-in method builtins.vars}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_legacy.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1212(AnnotationBbox)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:26(GridSpecBase)\n", - " 341 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:844(set_file)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._mps_get_default_generator}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:116(UserErrorType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:211(BboxBase)\n", - " 518 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1347(get_parse_math)\n", - " 118 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:310(ismethoddescriptor)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:29(format_list)\n", - " 170 0.000 0.000 0.000 0.000 {method 'astype' of 'numpy.ndarray' objects}\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:125()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:578(_ReducedHCT_Element)\n", - " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:111(set_)\n", - " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:297(get_joinstyle)\n", - " 571 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:81(in_base)\n", - " 1 0.000 0.000 0.000 0.000 {method 'close' of '_io.BufferedRandom' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:42(CompatibilityFiles)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:24(BaseListVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:430(OrtExecutionInfoPerSession)\n", - " 57 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:444(_uniq)\n", - " 4 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(diff)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:348(SymmetricalLogTransform)\n", - " 248 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2271()\n", - " 848 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1367(depth)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:189(BezierSegment)\n", - " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1046()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1949(Cursor)\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2786(get_affine)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:955(x0)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm.py:1()\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1041(set_antialiased)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/skipfiles.py:72()\n", - " 2 0.000 0.000 0.000 0.000 {built-in method posix.scandir}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:99(identbodychars)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:186(__init__)\n", - " 822 0.000 0.000 0.000 0.000 {method '__subclasses__' of 'type' objects}\n", - " 242 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3614()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/random.py:1()\n", - " 42 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/tokenize.py:329(find_cookie)\n", - " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:397()\n", - " 222 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1335()\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1100(set_gapcolor)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1377(expanduser)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1685(_safe_first_finite)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:60(SideEffects)\n", - " 549 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:884(get_clip_on)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3056(ToolHandles)\n", - " 346 0.000 0.000 0.000 0.000 {method 'ravel' of 'numpy.ndarray' objects}\n", - " 488 0.000 0.000 0.000 0.000 {built-in method numpy.geterrobj}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:1428(TrackedFake)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:430(ImageFileDirectory_v2)\n", - " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1234()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:878(CheckFunctionManager)\n", - " 123 0.000 0.000 0.000 0.000 :146(update_abstractmethods)\n", - " 557 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:888(get_clip_box)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4758(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1090(TimerBase)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3063(__hash__)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1867(_set_formatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1034(NonUniformImage)\n", - " 184 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:505(isbuiltin)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/comptime.py:1()\n", - " 183 0.000 0.000 0.000 0.000 {method 'sort' of 'numpy.ndarray' objects}\n", - " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:657(stem)\n", - " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1052()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:641(__getattr__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/table.py:37(Cell)\n", - " 518 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:3148(_ndim_dispatcher)\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:298(set_rotation_mode)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:992(__init__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:985(intervalx)\n", - " 388 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1004(set_url)\n", - " 452 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:611(get_gid)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/fx/_compatibility.py:24(mark_not_back_compat)\n", - " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:108(get)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1096(write)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1008(stat)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:513(format)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:24(Path)\n", - " 694 0.000 0.000 0.000 0.000 {method 'copy' of 'list' objects}\n", - " 490 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:152(concatenate)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:134(Diagnostics)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:2945(ToolLineHandles)\n", - " 367 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:426(_get_iscased)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3727(_setResultsName)\n", - " 648 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:754()\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:137(_max_pool)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:152(GraphArg)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PpmImagePlugin.py:1()\n", - " 284 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:939(set_dashes)\n", - " 899 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:589()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_casting_dicts.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:208(OffsetBox)\n", - " 500 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1128(sticky_edges)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:21(ActivationWrapper)\n", - " 117 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:182(_validate_hatch_pattern)\n", - " 467 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:849(get_in_layout)\n", - " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_reductions_impl.py:24(_deco_axis_expand)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:550(set_markevery)\n", - " 568 0.000 0.000 0.000 0.000 {method 'keys' of 'dict' objects}\n", - " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:523(_format_parsed_parts)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:586(set_clip_box)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:56(draw_idle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/constant.py:1()\n", - " 88 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:146(__init__)\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:46(__new__)\n", - " 14 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/fft.py:11(upcast)\n", - " 99 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:66(__call__)\n", - " 123 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:346(__init__)\n", - " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:200(__setitem__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1671(FigureCanvasBase)\n", - " 292 0.000 0.000 0.000 0.000 {method 'find' of 'bytearray' objects}\n", - " 222 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2264()\n", - " 350 0.000 0.000 0.000 0.000 {built-in method _imp._fix_co_filename}\n", - " 24/23 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1481()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:39(RuntimeTypeCheckState)\n", - " 392 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:723(get_path_effects)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/config.py:1()\n", - " 344 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:801()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:238(reload_library)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1245(is_dir)\n", - " 169 0.000 0.000 0.000 0.000 {built-in method numpy.empty}\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:135(__init__)\n", - " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/copyreg.py:113(_slotnames)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5716()\n", - " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:74(from_sarif)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1621()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2856(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:27(Patch)\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:125(_unpack_tuple)\n", - " 730 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:57(_no_op_decorator)\n", - " 404 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:254(should_simplify)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/function_base.py:1320(diff)\n", - " 374 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:541(locator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/testing.py:1()\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4879(__init__)\n", - " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:321(set_antialiased)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:582(get_data_path)\n", - " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:307(_class_escape)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:569(__init__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:528(set_results_name)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/abc.py:56(Traversable)\n", - " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:300(get_capstyle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:65(_single_shot_timer)\n", - " 404 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/path.py:242(simplify_threshold)\n", - " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1012(set_snap)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5711()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:141(InstructionTranslatorGraphState)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset16.py:1()\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:882(wrapper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1788()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:4182(Lasso)\n", - " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:52(checkcache)\n", - " 187 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:31(_combine_flags)\n", - " 22 0.000 0.000 0.000 0.000 :370(_get_module_info)\n", - " 334 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:664(get_sketch_params)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:294(__init__)\n", - " 99 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:331(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:157(Transpose)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:336(_validate_cmap)\n", - " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:936(get_markeredgecolor)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:227(__getitem__)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:458(format_frame_summary)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:1()\n", - " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:959(reset_cache)\n", - " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:466(__enter__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:27(JoinStyle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_prims/context.py:82(TorchRefsMode)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/make_functional.py:310(FunctionalModule)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:198(update_user_library)\n", - " 437 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1243(name)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1697(Norm)\n", - " 453 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:234(__init__)\n", - " 2 0.000 0.000 0.000 0.000 :27(isfile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:1()\n", - " 362 0.000 0.000 0.000 0.000 :413(has_location)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:97(LoggingTensorHandler)\n", - " 95 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2205(parse_name)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:490(enter_context)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1922(Arc)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1969()\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:236(set_locs)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/resume_execution.py:312(ContinueExecutionCache)\n", - " 131 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1711(set_whitespace_chars)\n", - " 102 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:24(__init__)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:546(__exit__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:441(_validate_papersize)\n", - " 156 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1924(__hash__)\n", - " 54 0.000 0.000 0.000 0.000 :756(encode)\n", - " 19 0.000 0.000 0.000 0.000 {method 'write' of '_io.BufferedRandom' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1339(LocationEvent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4757(_MultipleMatch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/quiver.py:443(Quiver)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:965(x1)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:193(FrameStateSizeEntry)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1615(Annotation)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:996(CheckButtons)\n", - " 1 0.000 0.000 0.000 0.000 {method 'float' of 'torch._C._TensorBase' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:1()\n", - " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:362(size)\n", - " 350 0.000 0.000 0.000 0.000 :1122(get_filename)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1111(mkdir)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:67(new_class)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset11.py:92(_apply)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:1()\n", - " 59 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:228(_acquireLock)\n", - " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:265(getuntil)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:119(CapStyle)\n", - " 388 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:807(restore)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:153(RendererBase)\n", - " 288 0.000 0.000 0.000 0.000 :1565()\n", - " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:877(_make_child_relpath)\n", - " 325 0.000 0.000 0.000 0.000 {method 'values' of 'mappingproxy' objects}\n", - " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:273(validate_color_or_auto)\n", - " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:462(_validate_linestyle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1314(FancyArrow)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/win.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:340()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:786(_add_axes_internal)\n", - " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:349(__init__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1827(set_major_formatter)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:960(y0)\n", - " 286 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:552(formatter)\n", - " 262 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:930(set_clip_rectangle)\n", - " 2 0.000 0.000 0.000 0.000 {built-in method torch.zeros_like}\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset11.py:349(_interpolate)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_binary_ufuncs_impl.py:1()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3123(set_axisbelow)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool_component.py:19(ToolComponent)\n", - " 50 0.000 0.000 0.000 0.000 {method 'remove' of 'list' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/resume_execution.py:33(ReenterWith)\n", - " 18 0.000 0.000 0.000 0.000 {method 'findall' of 're.Pattern' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_run.py:30(Run)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs_impl.py:1()\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:754(set_clip_box)\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4430(_generateDefaultName)\n", - " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:440()\n", - " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/random.py:39(deco_stream)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:222(__init__)\n", - " 183 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:630()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:2166(InliningInstructionTranslator)\n", - " 51 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:239(splitroot)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:18(PolarTransform)\n", - " 38 0.000 0.000 0.000 0.000 :309(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:111()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:13(Level)\n", - " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:357(validate_fontsize)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:123(_SymbolicFunctionGroup)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1701(__init__)\n", - " 150 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1232(__reduce_ex__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1719(__init__)\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:692(max)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:177(Resampling)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1401(MouseButton)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow.py:16(ThreadFlow)\n", - " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2107(_clip_dispatcher)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:14(Spine)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/autograd/function.py:307(__init__)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:1068(_interpolate_helper)\n", - " 172 0.000 0.000 0.000 0.000 :835(__iter__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:247(TorchHigherOrderOperatorVariable)\n", - " 150 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:898(get_position)\n", - " 2 0.000 0.000 0.000 0.000 :110(register)\n", - " 201 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:59(func)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:753()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:64(OverrideDict)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset15.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:343(Interop)\n", - " 217 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:234(parse_args)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:226(set_prop_cycle)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._get_operation_overload}\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3461(export)\n", - " 350 0.000 0.000 0.000 0.000 :931(create_module)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3596(ParseExpression)\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/_ufunc_config.py:426(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builtin.py:56(BuiltinVariable)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method posix.getcwd}\n", - " 4 0.000 0.000 0.000 0.000 {built-in method torch._C._dispatch_library}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1763(AffineBase)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:309(_convert)\n", - " 156 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:558(__getattr__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:313(select_from)\n", - " 59 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:237(_releaseLock)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/fnmatch.py:74(translate)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext_data.py:464()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/testing.py:15(pyparsing_test)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:297(HammerTransform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/quiver.py:870(Barbs)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:416(LambertTransform)\n", - " 2 0.000 0.000 0.000 0.000 {built-in method _abc._abc_register}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:474(SizeVariable)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_legacy.py:15(deprecated)\n", - " 125 0.000 0.000 0.000 0.000 {built-in method numpy.zeros}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:22(_NodeMissingOnnxShapeInference)\n", - " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:834(get_clip_path)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:249(AitoffTransform)\n", - " 462 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1147(__init__)\n", - " 66 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:356(_aggregate_mutables)\n", - " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1844(set_name)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:273(DefaultsSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/mutation_guard.py:1()\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:264(get_aliased_and_aliases)\n", - " 57 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2463()\n", - " 38 0.000 0.000 0.000 0.000 {method 'splitlines' of 'str' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GifImagePlugin.py:39(LoadingStrategy)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1613(__invert__)\n", - " 8 0.000 0.000 0.000 0.000 {built-in method torch._C._dispatch_has_kernel_for_dispatch_key}\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:260(points_to_pixels)\n", - " 136 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1549()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_version_control_details.py:15(VersionControlDetails)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/comptime.py:18(ComptimeVar)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/__init__.py:36(__deprecate_private_class)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:68(StatsProfile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1693(Annulus)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2789(_Mode)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:1794(_adaptive_pool)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ExifTags.py:351(IFD)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:849(__init__)\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:503(_cmpkey)\n", - " 34 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:297(__getitem__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:934(_scandir)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives_impl.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_unary_ufuncs_impl.py:1()\n", - " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2345(parseImpl)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_globals.py:1()\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1091()\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3399(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2890(Regex)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:344(MollweideTransform)\n", - " 216 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1757()\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2028(_staircase)\n", - " 2 0.000 0.000 0.000 0.000 {built-in method posix.access}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:368(FigureCanvasAgg)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/fx/passes/fake_tensor_prop.py:12(FakeTensorProp)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:964(StepPatch)\n", - " 46 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:515(_from_parsed_parts)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:208(__getattr__)\n", - " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:487(__exit__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:168(Transform)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1893(set_major_locator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_content.py:15(ArtifactContent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:188(InvertedPolarTransform)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:335(_interpolate)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:507(PythonSysModulesVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1823(_MathStyle)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:1716(_avg_pool)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:16(CheckpointImpl)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:204(TensorProperty)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:201(LogTransform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_properties.py:25(ExternalProperties)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2820(parseImpl)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4739(__init__)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:506(suppress_matplotlib_deprecation_warning)\n", - " 200 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:345()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2177(BlendedGenericTransform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:272(InvertedAitoffTransform)\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:755(get_remove_overlapping_locs)\n", - " 122 0.000 0.000 0.000 0.000 {method 'reset' of '_contextvars.ContextVar' objects}\n", - " 84 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:603()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_tensor.py:964(__len__)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1269(_process)\n", - " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:686(_register_basic)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:202(SymbolicRegistry)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:763(GraphicsContextBase)\n", - " 62 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:266(_check_generic)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1853(set_minor_formatter)\n", - " 149 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/collections/__init__.py:422()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1814(Affine2DBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_location.py:12(ArtifactLocation)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:3552(_unsupported_dropout)\n", - " 122 0.000 0.000 0.000 0.000 {method 'set' of '_contextvars.ContextVar' objects}\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:289(_avg_pool)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:51(DynamoCallbackFn)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:610(Shadow)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:4978(_one_hidden_rnn)\n", - " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/linecache.py:147(lazycache)\n", - " 216 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1756()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_layoutgrid.py:1()\n", - " 244 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:1888(_nonzero_dispatcher)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:383(decorator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1502(add_gridspec)\n", - " 109 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:772(rotation_point)\n", - " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:967(_find_data_repr_)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:316(InvertedHammerTransform)\n", - " 67 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:205()\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:287(wrapper)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5451(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:456(InvertedLambertTransform)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:188(caching_module_getattr)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:363()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_rectangle.py:12(Rectangle)\n", - " 114 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:260()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:209(Quantize)\n", - " 332 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1248(value)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:196(Dither)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:386(InvertedMollweideTransform)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3054(_hash_basis)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1611(set_aspect)\n", - " 244 0.000 0.000 0.000 0.000 {built-in method math.floor}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2698(_Base)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2611(set_layout_engine)\n", - " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1335(set_parse_math)\n", - " 14 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:436()\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1909(set_minor_locator)\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:25(_maybe_view_as_subclass)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:139(finalize)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:970(y1)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1138(start)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1265(_set_artist_props)\n", - " 41 0.000 0.000 0.000 0.000 {built-in method _imp.is_builtin}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:99(Disposal)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/utils.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1513(Ellipse)\n", - " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:746()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1176(PolyCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/texmanager.py:56(TexManager)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mathtext.py:48(__init__)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:918(__init__)\n", - " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:886(get_snap)\n", - " 12 0.000 0.000 0.000 0.000 {method 'cumsum' of 'numpy.ndarray' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4344(ParseElementEnhance)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:52(_process_keys)\n", - " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1150(_generate_next_value_)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_configuration.py:12(ReportingConfiguration)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:924(reset_ticks)\n", - " 57 0.000 0.000 0.000 0.000 {built-in method fromkeys}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_references.py:15(ExternalPropertyFileReferences)\n", - " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1046(get_hatch_linewidth)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:104(__init__)\n", - " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1038(get_hatch_color)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:243(InvertedLogTransform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1371(_tzparser)\n", - " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1027(get_hatch)\n", - " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:849(get_dashes)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:583(LogitTransform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1518(TensorStaticReason)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:381(InvertedSymmetricalLogTransform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4437(IndentedBlock)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:12(MutableLocalSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:58(RendererAgg)\n", - " 97 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5713()\n", - " 226 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:180(open_group)\n", - " 1 0.000 0.000 0.000 0.000 {method '_timer_start' of '_macosx.Timer' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:483(InvertedAsinhTransform)\n", - " 174 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:279(get_fillstyle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm.py:66(cubehelix)\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:597(get_url)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:672(get_offset)\n", - " 196 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1050(get_sketch_params)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:464(AsinhTransform)\n", - " 226 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:187(close_group)\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:152(validate_axisbelow)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:887(RegularPolygon)\n", - " 2 0.000 0.000 0.000 0.000 {built-in method posix.mkdir}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpGradientFile.py:1()\n", - " 49 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2333(_generateDefaultName)\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1837(is_separable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/resume_execution.py:279(ResumeFunctionMetadata)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:328(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:27(ParseResults)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:609(LogisticTransform)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:367(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm_listed.py:2061()\n", - " 180 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:355()\n", - " 100 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1455(is_dashed)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset18.py:1()\n", - " 104 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:165(keys)\n", - " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2795(__hash__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_device.py:1()\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:2181(wrap_logical_op_with_negation)\n", - " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:202(_checkLevel)\n", - " 3 0.000 0.000 0.000 0.000 {built-in method torch._C._get_tracing_state}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_run_automation_details.py:12(RunAutomationDetails)\n", - " 289 0.000 0.000 0.000 0.000 {method 'span' of 're.Match' objects}\n", - " 68 0.000 0.000 0.000 0.000 {method 'set_size' of 'matplotlib.ft2font.FT2Font' objects}\n", - " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:176(finalize)\n", - " 6 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(unravel_index)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact.py:17(Artifact)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1808(getattr_static)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/textpath.py:26(__init__)\n", - " 154 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1700(leave_whitespace)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:1()\n", - " 51 0.000 0.000 0.000 0.000 {built-in method builtins.locals}\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:326(get)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_exporter_states.py:1()\n", - " 67 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:99(deprecated)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/context.py:34(Diagnostic)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1641(sca)\n", - " 97 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1868(streamline)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:848(limit_range_for_scale)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tritools.py:1()\n", - " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:154(_deprecated_property)\n", - " 29 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:622(name)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trirefine.py:1()\n", - " 16 0.000 0.000 0.000 0.000 :815(__len__)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:173(__init__)\n", - " 137 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1633()\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5667()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/abc.py:131(TraversableResources)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:608(padded)\n", - " 80 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ndarray.py:82(create_method)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:105(_set_new_active_manager)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:146()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnx_proto_utils.py:1()\n", - " 40 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2998()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1564(__repr__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor.py:17(ReportingDescriptor)\n", - " 53 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:182(_add_module)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_thread_flow_location.py:19(ThreadFlowLocation)\n", - " 2 0.000 0.000 0.000 0.000 <__array_function__ internals>:177(ravel_multi_index)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/_structures.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1602(RadioButtons)\n", - " 62 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2285(_register_style)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:980(p1)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/optim/optimizer.py:846(add_param_group)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:80(Text)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:1()\n", - " 105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:88(do_copy)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3357(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1152(stop)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:75(nums)\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1147(set_fontweight)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:160(get_subplotspec_list)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_region.py:16(Region)\n", - " 44 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:17()\n", - " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:223(get_tick_padding)\n", - " 204 0.000 0.000 0.000 0.000 {method 'ljust' of 'str' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:617(Final)\n", - " 177 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3035(return_annotation)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:316(_flatten_literal_params)\n", - " 16/4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:84(_convert)\n", - " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:43(update)\n", - " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4100()\n", - " 138 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:227()\n", - " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:389(extended_frame_gen)\n", - " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2119()\n", - " 131 0.000 0.000 0.000 0.000 {method 'items' of 'mappingproxy' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:496(Image)\n", - " 16 0.000 0.000 0.000 0.000 :798(__eq__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:80(_invalidates_cache)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:815(overload_by_arg_count)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/helpers.py:703(OpAssoc)\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:85(_listify_validator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:141(GraphCompileReason)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:120(Blend)\n", - " 135 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3803()\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:832(_reduce_with_dtype)\n", - " 77 0.000 0.000 0.000 0.000 {method 'setter' of 'property' objects}\n", - " 105 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:86(copy)\n", - " 152 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:668(result_type)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3488(__init__)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1967()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:117(Artist)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:815(Grouper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:17(_AutoStringNameEnum)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/isoparser.py:22(_takes_ascii)\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2600(_ptp_dispatcher)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/context.py:272(DiagnosticContext)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_graph.py:17(Graph)\n", - " 44 0.000 0.000 0.000 0.000 :357(_get_module_path)\n", - " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:605(set_wrap)\n", - " 1 0.000 0.000 0.000 0.000 {method '_timer_stop' of '_macosx.Timer' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3459(__init__)\n", - " 111 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:458(_set_nothing)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triangulation.py:1()\n", - " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:440(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_notification.py:18(Notification)\n", - " 3 0.000 0.000 0.000 0.000 :397(abspath)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1154(set_axes_locator)\n", - " 18 0.000 0.000 0.000 0.000 :794(values)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_code_flow.py:16(CodeFlow)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1683(suppress)\n", - " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:246(get_canvas_width_height)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2309(_unpack_to_numpy)\n", - " 129 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:17(__getitem__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:32(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3262(__init__)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:132(_validate_fromutc_inputs)\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:2274(_isclose_dispatcher)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:204(Palette)\n", - " 83 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:313(quantized_args)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool.py:12(Tool)\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1740(tick_values)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3228(add_axobserver)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:266(validate_color_or_inherit)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1073(Polygon)\n", - " 130 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2328(_any_dispatcher)\n", - " 161 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:196(escape_re_range_char)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_address.py:12(Address)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:405(_generate_overlap_table)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:450(configure_artifact_log)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:231(Japanese)\n", - " 64 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:440(__repr__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:15(GeoAxes)\n", - " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:167(check_getitem)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:231(__post_init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:641(Path3DCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3757(And)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:262(x1)\n", - " 39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:877(__hash__)\n", - " 84 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:433()\n", - " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:108()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:568(parser)\n", - " 6 0.000 0.000 0.000 0.000 :150(dirname)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1470(__get_gettz)\n", - " 122 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:133(_unique_dispatcher)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageColor.py:1()\n", - " 27 0.000 0.000 0.000 0.000 {method 'translate' of 'bytearray' objects}\n", - " 57 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:202()\n", - " 114 0.000 0.000 0.000 0.000 {method 'decode' of 'bytes' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:111(GradModeVariable)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3452(register_extensions)\n", - " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2224(RewriteSymbolics)\n", - " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:807(get_width)\n", - " 137 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/stride_tricks.py:476(_broadcast_arrays_dispatcher)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3047(get_size_inches)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:2150(identity)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:28()\n", - " 89 0.000 0.000 0.000 0.000 {method 'encode' of 'str' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/actions.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1172(Wedge)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:852(register)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:154(_crc32)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1623(__getitem__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_web_response.py:15(WebResponse)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_replacement.py:16(Replacement)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:83(Unset)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1373(_result)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:208(register_axis)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1778(_check_class)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:681(add_parse_action)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:707(scale_factory)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:800(singledispatch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:2042(MultiCursor)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_web_request.py:15(WebRequest)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:866(__contains__)\n", - " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:308(wrapper)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1497(__mro_entries__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ufuncs.py:247()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1880(Circle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1689(patch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:406(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_graph_traversal.py:16(GraphTraversal)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:312(_logged_cached)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1321(__call__)\n", - " 100 0.000 0.000 0.000 0.000 {method '__exit__' of 'numpy.nditer' objects}\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3297(_generateDefaultName)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2278(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:693(add_condition)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:469(draw_if_interactive)\n", - " 156 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:772(postParse)\n", - " 112 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:429(is_transform_set)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/function_base.py:2269(__init__)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:116(clear)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:554()\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4972(_generateDefaultName)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:846()\n", - " 25 0.000 0.000 0.000 0.000 {built-in method unicodedata.name}\n", - " 112 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1371(get_mouseover)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:1488(CirclePolygon)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:126(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:303(IFDRational)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_cm.py:158()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3561(_apply_env_variables)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2306(mpl_disconnect)\n", - " 77 0.000 0.000 0.000 0.000 :409(__subclasshook__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:861()\n", - " 134 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:93(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/_common.py:1()\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_guards.py:166(__hash__)\n", - " 65 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:244(__bool__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:1230(exists)\n", - " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:264(__init__)\n", - " 16 0.000 0.000 0.000 0.000 :78(_check_methods)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:987(gcf)\n", - " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:135()\n", - " 28 0.000 0.000 0.000 0.000 {method 'fullmatch' of 're.Pattern' objects}\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:431()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:41(ExecutionRecorder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colorbar.py:195(Colorbar)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:178(decide_compile_threads)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:35(_get_running_interactive_framework)\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3441(register_extension)\n", - " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:106(__hash__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2190(__init__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1560(transform_bbox)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_property_bag.py:10(PropertyBag)\n", - " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:48(__new__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_util.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1032(enable_packrat)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_compiler.py:389(_bytes_to_codes)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:669(decorator)\n", - " 149 0.000 0.000 0.000 0.000 {method 'pop' of 'collections.deque' objects}\n", - " 78 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:199(get_path)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1570()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:302(DataClassVariable)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:136(_commonType)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:96(__get__)\n", - " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:795(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:936(PathPatch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/current_scope_id.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageMode.py:1()\n", - " 92 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1003(minpos)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:231(_ImageBase)\n", - " 94 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:1079(copyto)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_logical_location.py:12(LogicalLocation)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:181(_add_filter)\n", - " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/getlimits.py:679(min)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:56(_make_str_method)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_translation_metadata.py:15(TranslationMetadata)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:120(CallbackRegistry)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/distributed_c10d.py:346(__getattribute__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_result_provenance.py:15(ResultProvenance)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:112(__diag__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3232()\n", - " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2269()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_location.py:19(Location)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_message.py:12(Message)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3528(__init__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:799(null)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/twodim_base.py:162(eye)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1761(set_box_aspect)\n", - " 75 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:142()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2142(_set_artist_props)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/table.py:239(Table)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:350()\n", - " 84 0.000 0.000 0.000 0.000 {method 'update' of 'set' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/serialization.py:1()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_compile.py:8(_disable_dynamo)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PaletteFile.py:1()\n", - " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:386()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_exception.py:16(Exception)\n", - " 55 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:404()\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2736(axes)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:1878(isscalar)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_binary.py:101(o32be)\n", - " 106 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/shape_base.py:77(_atleast_2d_dispatcher)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:568(__init__)\n", - " 40 0.000 0.000 0.000 0.000 {method 'startswith' of 'bytes' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:322(condition_as_parse_action)\n", - " 2 0.000 0.000 0.000 0.000 :117(splitext)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:2170(decorator)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:859(set_bounds)\n", - " 59 0.000 0.000 0.000 0.000 {method 'acquire' of '_thread.RLock' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/random.py:70(_seed_custom_device)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1697(set_adjustable)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:45(_compat_get_offset)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:212(_validate_pathlike)\n", - " 105 0.000 0.000 0.000 0.000 {method 'removeprefix' of 'str' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:45(Tag)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:188(UserDefinedObjectVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:982(FontManager)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:289(update)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpPaletteFile.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:140(__init__)\n", - " 90 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:842(_hash_set_none)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:421(validate_whiskers)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:687()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:677(Bbox)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:749(StixFonts)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_physical_location.py:17(PhysicalLocation)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/__init__.py:1()\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:272(y1)\n", - " 57 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:265()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5044(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:26(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:23(ExecutionRecord)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2676(notify_axes_change)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:100(get_active)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1924(_caller)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_location_relationship.py:12(LocationRelationship)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:171(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:150(TorchFunctionDisableVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_stack_frame.py:12(StackFrame)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_special_locations.py:15(SpecialLocations)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/quiver.py:235(QuiverKey)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:214(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:1872(AppendingTiffWriter)\n", - " 27 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:325(walk_stack)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_suppression.py:12(Suppression)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:257()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:417(_getencoder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2324(new_timer)\n", - " 48 0.000 0.000 0.000 0.000 :315(__subclasshook__)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3392(register_open)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1693(_process_projection_requirements)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/warnings.py:165(simplefilter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_reference.py:15(ReportingDescriptorReference)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/testing.py:124(TestParseResultsAsserts)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1302(RegularPolyCollection)\n", - " 41 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:262(haskeys)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mathtext.py:37(MathTextParser)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:77()\n", - " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:805(get_color)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageSequence.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_tool_component_reference.py:12(ToolComponentReference)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_node.py:17(Node)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:259(disconnect)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:41(tzutc)\n", - " 64 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3858()\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1794(_shadowed_dict)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:667(with_name)\n", - " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:368(_intersect1d_dispatcher)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3216(update)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/nn_module.py:66(NNModuleVariable)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:591(__iter__)\n", - " 38 0.000 0.000 0.000 0.000 :260(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/nn_module.py:634(UnspecializedNNModuleVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:624(SkipFilesVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:256(_validate_toolbar)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_edge.py:12(Edge)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_sarif_log.py:16(SarifLog)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:1281(TorchPatcher)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_getlimits.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:906(AnchoredOffsetbox)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1909(TriMesh)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_attachment.py:18(Attachment)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:27(_apply)\n", - " 9 0.000 0.000 0.000 0.000 {method 'clear' of 'collections.OrderedDict' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_reporting_descriptor_relationship.py:16(ReportingDescriptorRelationship)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:510(update)\n", - " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:345(get_path)\n", - " 47 0.000 0.000 0.000 0.000 {method 'index' of 'list' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_edge_traversal.py:12(EdgeTraversal)\n", - " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:383(get_snap_threshold)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:194(find_spec)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:445()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1768(EllipseCollection)\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2259(_make_getset_interval)\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3055()\n", - " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:761(_isin_dispatcher)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2796()\n", - " 3 0.000 0.000 0.000 0.000 :389(normpath)\n", - " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:364(get_alt_path)\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:152(__contains__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:3125(clear)\n", - " 96 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:199(no_escape_re_range_char)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:594(__len__)\n", - " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/arraysetops.py:519(_in1d_dispatcher)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:149(_tzinfo)\n", - " 28 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:673()\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4753(_generateDefaultName)\n", - " 68 0.000 0.000 0.000 0.000 {method 'get_descent' of 'matplotlib.ft2font.FT2Font' objects}\n", - " 19 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1229(__hash__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1553(unique)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:62(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:434(BakomaFonts)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:156(update)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:433(__init__)\n", - " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/numeric.py:73(_zeros_like_dispatcher)\n", - " 45 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:452(_parse_letter_version)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:249(validate_backend)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_multiformat_message_string.py:12(MultiformatMessageString)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:286(_validate_color_or_linecolor)\n", - " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:896(get_drawstyle)\n", - " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:390()\n", - " 39 0.000 0.000 0.000 0.000 {method 'get_width_height' of 'matplotlib.ft2font.FT2Font' objects}\n", - " 5 0.000 0.000 0.000 0.000 {built-in method _warnings.warn}\n", - " 54 0.000 0.000 0.000 0.000 {method '__exit__' of '_thread.RLock' objects}\n", - " 59 0.000 0.000 0.000 0.000 {method 'release' of '_thread.RLock' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:426(_reduce_with_dtype)\n", - " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:164(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:831(PsfontsMap)\n", - " 61 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:84(empty_like)\n", - " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4088()\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:637(colspan)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/__init__.py:21(__deprecated_private_func)\n", - " 54 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:834(get_alpha)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5509(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_external_property_file_reference.py:15(ExternalPropertyFileReference)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:2126(QuadMesh)\n", - " 12 0.000 0.000 0.000 0.000 {built-in method zlib.crc32}\n", - " 47 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4087()\n", - " 4 0.000 0.000 0.000 0.000 :283(__subclasshook__)\n", - " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:221()\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2530(overload)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:44(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:501(CompilationMetrics)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:31(unicode_set)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:86(_update_methods)\n", - " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:609(get_markevery)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:183(Line3D)\n", - " 50 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/markers.py:303(get_marker)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:132(tzoffset)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:174(_make_type_validator)\n", - " 49 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1663()\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:85(register_artifact_log)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:9(Gcf)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:631(rowspan)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:239(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:328(add_text)\n", - " 49 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:715()\n", - " 48 0.000 0.000 0.000 0.000 {method 'issuperset' of 'set' objects}\n", - " 66 0.000 0.000 0.000 0.000 {built-in method _warnings._filters_mutated}\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:296(_apply_params)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:990(intervaly)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:98(prepare_class)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1695(safe_isfinite)\n", - " 1 0.000 0.000 0.000 0.000 {method 'flush' of '_io.BufferedRandom' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_configuration_override.py:16(ConfigurationOverride)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:19(ParseBaseException)\n", - " 56 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:327(_select_from)\n", - " 42 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:177(__init__)\n", - " 22 0.000 0.000 0.000 0.000 :361(_is_dir)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_conversion.py:17(Conversion)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2498(get_minpos)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:76(Text3D)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:543(_new)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2634(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1223(fields)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4578(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3418(draw_if_interactive)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1590(get_major_locator)\n", - " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4370(recurse)\n", - " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:385()\n", - " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/re/_parser.py:295(checkgroupname)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:311(triton)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageChops.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:88(_finalize_rasterization)\n", - " 9 0.000 0.000 0.000 0.000 :1103(_sanity_check)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/api.py:23(FFI)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1116(__init__)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:198()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_stack.py:16(Stack)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_globals.py:15(_InternalGlobals)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:454(__contains__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:804(PolarAxes)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:233()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:226()\n", - " 29 0.000 0.000 0.000 0.000 {method 'get_bitmap_offset' of 'matplotlib.ft2font.FT2Font' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1271(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:180(DeterministicAlgorithmsVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:56(__init__)\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:565()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1189(args)\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3532(parseImpl)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:12(__config_flags)\n", - " 58 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:672(flipy)\n", - " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:247(__iter__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:961(_CollectionWithSizes)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/abc.py:14(ResourceReader)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2239(get_label_position)\n", - " 20 0.000 0.000 0.000 0.000 :812(__init__)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5721(token_map)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:440(__getitem__)\n", - " 50 0.000 0.000 0.000 0.000 {method 'insert' of 'list' objects}\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:3058()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_secondary_axes.py:11(SecondaryAxis)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/json/decoder.py:284(__init__)\n", - " 1 0.000 0.000 0.000 0.000 :773(getenv)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:264(__init__)\n", - " 37 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:158()\n", - " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:372()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:522(_push_cm_exit)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method posix.cpu_count}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_artifact_change.py:16(ArtifactChange)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:977(clear)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:115()\n", - " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:794(get_window_extent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:102(PrimitiveType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:100(__init__)\n", - " 36 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4099()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:409(iscoroutinefunction)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:493(Module_six_moves_urllib)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:633(__init__)\n", - " 1 0.000 0.000 0.000 0.000 {method 'requires_grad_' of 'torch._C._TensorBase' objects}\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_functorch/deprecated.py:20(get_warning)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:131(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/codegen.py:43(PyCodegen)\n", - " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:14(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:1033(_LuatexKpsewhich)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2289(XAxis)\n", - " 35 0.000 0.000 0.000 0.000 {built-in method sys._getframe}\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2592(_check_layout_engines_compat)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/_fix.py:16(Fix)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:74(Stats)\n", - " 1 0.000 0.000 0.000 0.000 :422(spec_from_loader)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1358(decorate_callable)\n", - " 35 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:229(_ishidden)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:62(__init__)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method PIL._imaging.zip_encoder}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/BmpImagePlugin.py:62(BmpImageFile)\n", - " 29 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:820(get_antialiased)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1925(set_pickradius)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:76(_convert_signed_num)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:435(locally_modified_subplot_params)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:292(p1)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:73(ToolBase)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:94(join_parsed_parts)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:44(LoggingTensor)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:128(OrtOperatorSupport)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:234(_has_alpha_channel)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_deprecate.py:1()\n", - " 23 0.000 0.000 0.000 0.000 {method 'partition' of 'str' objects}\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:222(has_magic)\n", - " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2821()\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset10.py:72(_apply_params)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:439(from_list)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1216(Normalize)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3379(_generateDefaultName)\n", - " 31 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4098()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:52(ConfigModule)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/mutation_guard.py:56(GenerationTracker)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3210(RectangleSelector)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:1()\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:797(__iter__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:498(set_useLocale)\n", - " 1 0.000 0.000 0.000 0.000 :933(clear)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:695(__hash__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:221(validate_fonttype)\n", - " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:370(__init__)\n", - " 26 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2016()\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2741(get_minpos)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:77(__call__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1276(Transform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:2527(YAxis)\n", - " 26 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:388(_delegate)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:12(ModuleRecord)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:181()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:33()\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:70(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/JpegPresets.py:1()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:209()\n", - " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:351()\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4895(_generateDefaultName)\n", - " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:188(_dispatch)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:548(from_dict)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1545(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triangulation.py:8(Triangulation)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4773(stopOn)\n", - " 2 0.000 0.000 0.000 0.000 :121(_splitext)\n", - " 9 0.000 0.000 0.000 0.000 {built-in method _struct.calcsize}\n", - " 2 0.000 0.000 0.000 0.000 :262(__subclasshook__)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:238(__contains__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tripcolor.py:1()\n", - " 88 0.000 0.000 0.000 0.000 {built-in method builtins.globals}\n", - " 23 0.000 0.000 0.000 0.000 {method 'rsplit' of 'str' objects}\n", - " 43 0.000 0.000 0.000 0.000 {method 'pop' of 'set' objects}\n", - " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1787()\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:170(change_key)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:375(ScalarFormatter)\n", - " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2265()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:21(FigureCanvasMac)\n", - " 4 0.000 0.000 0.000 0.000 :362(__subclasshook__)\n", - " 25 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_helper.py:669(_block_list_in_opset)\n", - " 39 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1873(recurse)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3045(QuotedString)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:732(XAxis)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/relativedelta.py:13()\n", - " 46 0.000 0.000 0.000 0.000 {method 'reverse' of 'list' objects}\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:310(_original_line)\n", - " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:171(__set_name__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:841(_is_union_type)\n", - " 61 0.000 0.000 0.000 0.000 {built-in method _sre.unicode_iscased}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:181(dynamo_timed_inner)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:404(trace)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3511(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:2177(_SelectorWidget)\n", - " 20 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1165(get_axes_locator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:531(SubplotSpec)\n", - " 16 0.000 0.000 0.000 0.000 {built-in method _struct.pack}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:665(Colormap)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:283(get_children)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1740()\n", - " 57 0.000 0.000 0.000 0.000 {built-in method _sre.unicode_tolower}\n", - " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3627(recurse)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1263(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:241(parserinfo)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:89(__compat__)\n", - " 4 0.000 0.000 0.000 0.000 :60(__getattr__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:270(DiagnosticOptions)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:587(ExportOutput)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:960(ImageFileDirectory_v1)\n", - " 3 0.000 0.000 0.000 0.000 {built-in method posix._path_normpath}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/registration.py:35(OpName)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1153(LockableBbox)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4866(ZeroOrMore)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:118(set_active)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:532(FontProperties)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2149(SubFigure)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:223()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1565(EventCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:210(_process_plot_var_args)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:545(locator)\n", - " 33 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:370()\n", - " 35 0.000 0.000 0.000 0.000 {method 'bit_length' of 'int' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/logging.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives.py:304(AsyncCollectiveTensor)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:97(ColorSequenceRegistry)\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:190(set_axis)\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:86(as_list)\n", - " 1 0.000 0.000 0.000 0.000 :1276(__init__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:283(__len__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:72(_convert_num)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:103(OnnxRegistry)\n", - " 8 0.000 0.000 0.000 0.000 :1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:848(AxesImage)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cycler.py:104(Cycler)\n", - " 41 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/_distutils_hack/__init__.py:96()\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:576(_validate_greaterequal0_lessequal1)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:120(__init__)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:112(_makearray)\n", - " 34 0.000 0.000 0.000 0.000 {method 'groupdict' of 're.Match' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:227(RuleCollection)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3418(register_save)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1972(_MeshData)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:190(set)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/relativedelta.py:18(relativedelta)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:391(_has_code_flag)\n", - " 4 0.000 0.000 0.000 0.000 {built-in method numpy.core._multiarray_umath.normalize_axis_index}\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:835(load)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:181()\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1273(append)\n", - " 18 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:609(num2)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:131(_validate_date)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:551(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triplot.py:1()\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:33(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1378(LineCollection)\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:97(__init__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1310(__init__)\n", - " 1 0.000 0.000 0.000 0.000 :1311(__iter__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:809(Replacer)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5117(Forward)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:110(get_projection_class)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:119(_resolve)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:236(create_module)\n", - " 10 0.000 0.000 0.000 0.000 :1220(__init__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3304(parseImpl)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset8.py:70(_apply)\n", - " 36 0.000 0.000 0.000 0.000 {method 'end' of 're.Match' objects}\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:556(formatter)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1668(__eq__)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method time.localtime}\n", - " 5 0.000 0.000 0.000 0.000 :818(fsdecode)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:438(HFPretrainedConfigVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:740(YAxis)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_VF.py:26(__getattr__)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2883(_namedtuple_mro_entries)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:74(__lt__)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:568(_validate_greaterthan_minushalf)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImagePalette.py:25(ImagePalette)\n", - " 42 0.000 0.000 0.000 0.000 {method 'upper' of 'str' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:517(CleanupHook)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/constant.py:29(ConstantVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_binary.py:1()\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:85(_import_module)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:844(Poly3DCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:390(ScalarMappable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2354(Keyword)\n", - " 7 0.000 0.000 0.000 0.000 {method 'seek' of '_io.BufferedReader' objects}\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:702(get_scale_names)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:124()\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2189(runtime_checkable)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:147(forbid_in_graph)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:125(Element)\n", - " 30 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/function_base.py:18(_linspace_dispatcher)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1603(get_aspect)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1305(EngFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:366(backend_mod)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:100(is_off_by_default)\n", - " 22 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3361()\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:74(get_geometry)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._log_api_usage_once}\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1744(_fix_ipython_backend2gui)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:442()\n", - " 37 0.000 0.000 0.000 0.000 {method 'clear' of 'dict' objects}\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3407(register_mime)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1794()\n", - " 2 0.000 0.000 0.000 0.000 :1293(_get_parent_path)\n", - " 6 0.000 0.000 0.000 0.000 :760(decode)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4983(SkipTo)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1766(_static_getmro)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/__init__.py:7(is_available)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:64(Rule)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:815(LogFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_afm.py:358(AFM)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/jit_utils.py:23(GraphContext)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:32(ToolManager)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:1729()\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:535(__init__)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:227()\n", - " 2 0.000 0.000 0.000 0.000 :786(keys)\n", - " 2 0.000 0.000 0.000 0.000 {method 'manual_seed' of 'torch._C.Generator' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1884(Affine2D)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:765(_validate_legend_loc)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1418(_rrulestr)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._get_schema}\n", - " 13 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_deprecation.py:8(deprecated)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:512(__init__)\n", - " 1 0.000 0.000 0.000 0.000 {method '_set_window_mode' of '_macosx.FigureManager' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:21()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1512(CenteredNorm)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3321(White)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2452(_unit_change_handler)\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:374(validate_fontweight)\n", - " 24 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:617(get_gridspec)\n", - " 21 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:305(_export)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:418(__getattr__)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1798(get_anchor)\n", - " 1 0.000 0.000 0.000 0.000 :1037(_resolve_name)\n", - " 1 0.000 0.000 0.000 0.000 :100(split)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:56(TensorVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1077(TransformedBbox)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:103(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/axis3d.py:748(ZAxis)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5456(postParse)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1494(__or__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:81(ExportDiagnosticEngine)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/__init__.py:106(__version__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2613(Word)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3380(_Backend)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/stackplot.py:1()\n", - " 3 0.000 0.000 0.000 0.000 :381(__subclasshook__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:1787(_is_type)\n", - " 1 0.000 0.000 0.000 0.000 :39(isdir)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:31(iglob)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:1950(InstructionTranslator)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:53(__get__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:360(PngStream)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4066(MatchFirst)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2579(FigureManagerBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:32()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:59(ColormapRegistry)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:231(_normalize)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:527(_push_exit_callback)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:42(_MissingCustomSymbolicFunction)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1685(TransformWrapper)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method PIL._imaging.map_buffer}\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1689()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:267(tzrangebase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/collections/__init__.py:585(__init__)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_guards.py:190(source)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_globals.py:22(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:2278(LightSource)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:966(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1255(__mro_entries__)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:208(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:26(ConstDictVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:958(LinearSegmentedColormap)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2204(_Style)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:523(Ticker)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py:90(RLock)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:228()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1106(__init__)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1720(getEffectiveLevel)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:262(cpp)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1267(__init__)\n", - " 32 0.000 0.000 0.000 0.000 {built-in method _operator.index}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:182()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:183()\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:434()\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:76()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:386(tzfile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/ast.py:67(_raise_malformed_node)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:117(isComplexType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:279(ConstPointerType)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:238()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:26(StrCategoryConverter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:286(CubicTriInterpolator)\n", - " 3 0.000 0.000 0.000 0.000 {method 'tolist' of 'memoryview' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/mutation_guard.py:10(MutationTracker)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:134(__getattr__)\n", - " 1 0.000 0.000 0.000 0.000 {method 'setimage' of 'ImagingEncoder' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:114(OrphanPath)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:75(register)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:674(get_topmost_subplotspec)\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:491(_parse_local_version)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:9(__init__)\n", - " 14 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/_common.py:9(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:172(Stack)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:109(OptimizedModule)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/textpath.py:20(TextToPath)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_layoutgrid.py:31(LayoutGrid)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:108(ConversionInterface)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/mlab.py:770(GaussianKDE)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:138()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1427(exec_body_callback)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:2573()\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:243(generic_jump)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:645(RcParams)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3597(Exif)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4522(AtLineStart)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:62(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:595(DrawingArea)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:524(__init__)\n", - " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:224(__set_name__)\n", - " 12 0.000 0.000 0.000 0.000 :7(abstractmethod)\n", - " 15 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:1238()\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:579(_update_clip_properties)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:1755(have_units)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:198()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2875(_check_size)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/shlex.py:19(shlex)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:725(_NoopSaveInputs)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/config.py:169(is_fbcode)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:406(_validate_mathtext_fallback)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:477(QName)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GifImagePlugin.py:63(GifImageFile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1193(kwargs)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:292()\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/traceback.py:307(__len__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:787(parents)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1962(MaxNLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:754()\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:726(get_figure)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:548(ColorConverter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:125()\n", - " 16 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:518()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:858(validate_hist_bins)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:72(colorbar_gridspec)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:460(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/comptime.py:112(ComptimeContext)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/lock.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1167(interval)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:498(_ThetaShift)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:577(KeyedJaggedTensorVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:149(FigureManagerMac)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/weakref.py:495(popitem)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2704(LogitLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2592(AsinhLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:73(_AxesStack)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:205(load_module)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:394(_ymd)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:190()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:5(Container)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2056(__init__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:1023(get_fignums)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:244(DType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:420(major)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:164(_resolve)\n", - " 23 0.000 0.000 0.000 0.000 {built-in method _stat.S_ISLNK}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:1132(SubgraphTracer)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/_structures.py:6(InfinityType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2445(CompositeAffine2D)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3225(ToolContainerBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2369(Ellipse)\n", - " 1 0.000 0.000 0.000 0.000 :1297(_recalculate)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:570(Stack)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:1()\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:790(get_scale)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tritools.py:11(TriAnalyzer)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_logging/_internal.py:115(is_artifact_enabled)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/sarif/version.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1767(C14NWriterTarget)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:723(PngImageFile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PaletteFile.py:19(PaletteFile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:1059(TiffImageFile)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:38(_ignore_error)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config.py:264(is_fbcode)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:107(get_linalg_error_extobj)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:218(TensorPropertySource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:106()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:100(add)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:186(_assert_stacked_square)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:366()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:71(DefaultDeviceType)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:55()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:238(HandlerLine2DCompound)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_guards.py:186(name)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:163(FakeRootModule)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:494(GetAttrVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:522(Spines)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/backends/registry.py:9(CompiledFn)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:560(CollectiveFunctionRewriteVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1458(PercentFormatter)\n", - " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:1465()\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:241(__len__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:319(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1402(_fixupChildren)\n", - " 1 0.000 0.000 0.000 0.000 :1081(__subclasshook__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_ops.py:41(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:308(add_module_init_func)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:795(Config)\n", - " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1895(device_pixel_ratio)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:201(tzlocal)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:219(is_package)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:748(_WedgeBbox)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2833()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:347(__exit__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_type_utils.py:317()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:666(SymNodeVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1141(OffsetImage)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_inductor/test_operators.py:13(Realize)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1181(single_shot)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1751(ParserState)\n", - " 8 0.000 0.000 0.000 0.000 :1224(__eq__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/torch.py:138(TorchVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1109(LogitFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/__init__.py:99(version_info)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:706(isDefault_majloc)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:1018(TensorSubclassVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_version.py:1()\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:452(set_useOffset)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/_weakrefset.py:173(__eq__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1602(_get_target)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/output_graph.py:175(WrapperBackend)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:65(_BaseVersion)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:254(iTXt)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:126()\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3380()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:1481(QuadContourSet)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:896(ToolHelpBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1458(DraggableBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:421(buffer_rgba)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:251(CommonListMethodsVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:198(Formatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:83(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:65(Text)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_layout.py:239()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:707(TextArea)\n", - " 12 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/fromnumeric.py:2519(_cumsum_dispatcher)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:180(_assert_stacked_2d)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:121(BlockStackEntry)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:534(Patch3DCollection)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:225(_clear)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/external_utils.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:220(_TorchDynamoContext)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/_structures.py:35(NegativeInfinityType)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1014(minposx)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1444(_AnnotationBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1167(_tzicalvtz)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1475(GettzFunc)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:361(HandlerStepPatch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:140(PolarAffine)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:77(resolve_bases)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:884(FXGraphExtractor)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:273(ExportOptions)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3911(Or)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:561(_from_subplot_args)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:714(isDefault_majfmt)\n", - " 8 0.000 0.000 0.000 0.000 {built-in method math.isfinite}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_deprecation.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:45(InputAdapter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1174(CompileProfiler)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:347(ListVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:94(rrulebase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4591(PrecededBy)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:124(Circles)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1748(CircleCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:158(ToolToggleBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:77(destroy_all)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1388(BboxImage)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3410(set_axis_on)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:186(_get_module)\n", - " 20 0.000 0.000 0.000 0.000 {method '__init_subclass__' of 'object' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:43(TorchScriptOnnxExportDiagnostic)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:165(GuardCodeList)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:2434(InliningGeneratorInstructionTranslator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1417(TwoSlopeNorm)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:409(SymmetricalLogScale)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2159(_BlendedMixin)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4907(Opt)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1467(AxLine)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1192(RRuleLocator)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:201(_is_param_expr)\n", - " 7 0.000 0.000 0.000 0.000 {method 'index' of 'str' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:265(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:391(OptimizeContext)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3429(register_save_all)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:85(ImageFile)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:78(limit_range_for_scale)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:709(ToolZoom)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:66(Widget)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1410(Hrule)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:27(LayoutEngine)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2904(set_canvas)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1778(DateConverter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:232(LinearTriInterpolator)\n", - " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:2744(annotation)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:855(_set_autoscale_on)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:130(_realType)\n", - " 17 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/dataclasses.py:179(__repr__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:971(UnspecializedPythonVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:133(DeviceMeshVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:525(ElementTree)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1752(LinearLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5554(Suppress)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3136(_Base)\n", - " 9 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:2678(get_layout_engine)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/__init__.py:23(_running_with_deploy)\n", - " 6 0.000 0.000 0.000 0.000 {method 'join' of 'bytes' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_constants.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:135(Location)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:764(_get_backend_or_none)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:162(ChunkStream)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:499(AsinhScale)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:221(Fonts)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:540(UnicodeFonts)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:824(AuxTransformBox)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2269(_generateDefaultName)\n", - " 11 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1001()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:543(validate_bbox)\n", - " 3 0.000 0.000 0.000 0.000 {method 'index' of 'tuple' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:58(FunctionProfile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:101(UserFunctionVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:727(TensorWithTFOverrideVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:494(MapHigherOrderVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:677(_Stack)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5373(Combine)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1368(StarPolygonCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:2239(PolyQuadMesh)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3207(_Curve)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1188(PcolorImage)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:402(ThetaAxis)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:19(ConfigModuleInstance)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:63(DynamoGuardHook)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:688(clear)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2863(Char)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/textpath.py:293(TextPath)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:169(_SixMetaPathImporter)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/__init__.py:43(private_class)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:2372(get_origin)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/__init__.py:68(queue_seed_all)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:386(DequeVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1112(CheckpointHigherOrderVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:27(classproperty)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2525(BboxTransform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2499(CaselessKeyword)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:457(ToolViewsPositions)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:318(GridSpec)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/data/datapipes/_typing.py:221(__eq__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:367(ExactWeakKeyDictionary)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:39(UserDefinedClassVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:157(ProcessGroupVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/__init__.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:83()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:12(qualify)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4177(Each)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/pyplot.py:200(install_repl_displayhook)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:48(SpecPath)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/optimizer.py:25(OptimizerVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2663(ScaledTranslation)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/__init__.py:56(fget)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:127()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:68(_is_instance_mock)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:324(ResolvedExportOptions)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset11.py:89(_apply_params)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:191(CheckpointFunction)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:108(CheckpointWrapper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/dicts.py:246(DefaultDictVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:221(DisabledSavedTensorsHooksVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:419(AutogradFunctionContextVariable)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:557(validate_sketch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:345(StructOrUnion)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4714(NotAny)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/lines.py:1602(VertexSelector)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/image.py:1325(FigureImage)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:94(bubble)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:730(isDefault_minfmt)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:259(DomainMap)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trirefine.py:47(UniformTriRefiner)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:899(_is_typevar_like)\n", - " 2 0.000 0.000 0.000 0.000 {built-in method time.time}\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:793(_reduce_op_symbolic)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/symbolic_convert.py:382(break_graph_if_unsupported)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:704(FlattenInputOutputSignature)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:1608(SourcelessBuilder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2175(_backend_module_name)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4501(AtStringStart)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:329(TruetypeFonts)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:545(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:122(set_height_ratios)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:80(_add_doc)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:78(add)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:36(SortKey)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:456(TupleVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:22(ContextWrappingVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:82(PlacementVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:233(__getattr__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2568(BboxTransformTo)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2627(BboxTransformFrom)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2220(_PendingSkip)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4862(_generateDefaultName)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:903(FontConstantsBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:405(XTick)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1112(_iterinfo)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1215(_Sparse_Matrix_coo)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:699(RadialAxis)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:412(Patch3D)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/fx/_compatibility.py:7(compatibility)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset8.py:76(_interpolate)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:2059(_interpolate)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:17(InstructionExnTabEntry)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:174(StackSize)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:315(GetItemSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/operators.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:49(PlacementClassVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:261(LogScale)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2689(AffineDeltaTransform)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3241(CharsNotIn)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1373(AsteriskPolygonCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:830(ToolPan)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2044()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:613(num2)\n", - " 8 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:722(isDefault_minloc)\n", - " 3 0.000 0.000 0.000 0.000 {built-in method sys.exc_info}\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset8.py:67(_apply_params)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:62(_MissingStandardSymbolicFunction)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:149(guard_source)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:762(SetElement)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:432(validate_ps_distiller)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:358(Parser)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:9(__init__)\n", - " 7 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:851()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:434(__len__)\n", - " 1 0.000 0.000 0.000 0.000 {method 'title' of 'str' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:98(OutputAdapter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/convert_frame.py:75(Tracker)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:364(NestedUserFunctionVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:359(CUDAStreamContextVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/distributed.py:12(DistributedVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1384(TreeBuilder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:453(_E)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:25(BaseTypeByIdentity)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:159(_DummyAxis)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1093(set_label)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:642(ZoomPanBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:527(PaddedBox)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:462(YTick)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:985(_DOF_estimator)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:886(__repr__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:304(__init__)\n", - " 3 0.000 0.000 0.000 0.000 {method 'cast' of 'memoryview' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:264(UserMethodVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:272(AutocastModeVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/_functional_collectives_impl.py:30(_WaitRegistration)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1506(XMLParser)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_util.py:5(is_path)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colorbar.py:146(_ColorbarAxesLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1308(Vlist)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:69(ProjectionRegistry)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1662(_value_and_type_iter)\n", - " 5 0.000 0.000 0.000 0.000 {method 'discard' of 'set' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:274(_FxNodeInsertTypePromotion)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/onnxruntime.py:489(OrtExecutionInfoForAllGraphModules)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:14(generic)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:61(_ColorMapping)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2438(SymmetricalLogLocator)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:1025(minposy)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1008(PathCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1068(Char)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:132(TightLayoutEngine)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:83(ChildPath)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1116(DateLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:15(TriInterpolator)\n", - " 2 0.000 0.000 0.000 0.000 :1283(_find_parent_path_names)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:212(InspectSignatureVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:2055(_OrderedSet)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:88(_generate_etree_functions)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1121(ListedColormap)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4555(FollowedBy)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:211(ConstrainedLayoutEngine)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:1399(ArtistList)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_common.py:13(tzname_in_python2)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:92(_OperatorSupportedInNewerOpsetVersion)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:126(_FxGraphToOnnx)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_ndarray.py:47(Flags)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:93(LoggingTensorReentrant)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:26(SuperVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2719(TransformedPath)\n", - " 3 0.000 0.000 0.000 0.000 {method 'dim' of 'torch._C._TensorBase' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:163(Button)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:85(get_projection_names)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:724(__init__)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1795(is_saving)\n", - " 10 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:71()\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/convert_frame.py:76(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:146(_FxNodeToOnnx)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:166(_FxPass)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:234(_OpLevelDebugging)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:294(_FindOperatorOverloadsInOnnxRegistry)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:80(LocalSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/_device.py:58(DeviceContext)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:113(GeneratorStateSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:473(ConstantSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:204(RangeVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/codegen.py:33(GraphOutputEntry)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1840(SymLogNorm)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1878(AsinhNorm)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:3473(register_decoder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:25(DTDForbidden)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:298(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:11(_ParseResultsWithOffset)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:245(ToolSetCursor)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:573(DviFont)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:138(StrCategoryFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:219(_resultbase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:46(HandlerBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trifinder.py:27(TrapezoidMapTriFinder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:223(_GeoTransform)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:277(option_image_nocomposite)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/JpegImagePlugin.py:346(JpegImageFile)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._mps_is_in_bad_fork}\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:479(__repr__)\n", - " 6 0.000 0.000 0.000 0.000 {built-in method _stat.S_ISDIR}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:206(_UnsupportedFxNodeAnalysis)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:254(_FindOpschemaMatchedSymbolicFunction)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:60(MutableLocal)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:80(BaseUserFunctionVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:684(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1910(PowerNorm)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:539(size)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1849(PatchCollection)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:82(adjust_compatible)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:781(get_subplotspec)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:258(_AxisWrapper)\n", - " 4 0.000 0.000 0.000 0.000 :2(__eq__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:207(Graph)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_rules.py:186(_NoSymbolicFunctionForCallFunction)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:557(LargeProtobufExportOutputSerializer)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:264(DuplicateWarningChecker)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:413(ODictGetItemSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:869(NumpyNdarrayVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:576(NamedTupleVariable)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:611(_validate_minor_tick_ndivs)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:160(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:29(ScaleBase)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3476(Show)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:664(Vf)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:266(SliderBase)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:647()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/_common.py:6(weekday)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:874(tzrange)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1866(_SwitchableDateConverter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:449(RadialLocator)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method posix.register_at_fork}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/registration.py:18(ONNXFunction)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:347(ExceptionTableEntry)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:1295()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:51(ValidateInStrings)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1568(Locator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/testing.py:20(reset_pyparsing_context)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:97(RasterParse)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:28(LockDraw)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:328(_ttinfo)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1707(MicrosecondLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:13(__call__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:305(rrule)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:372(Line3DCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PpmImagePlugin.py:149(PpmPlainDecoder)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/logging/__init__.py:1319(disable)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:1029(unravel_index)\n", - " 4 0.000 0.000 0.000 0.000 {built-in method sys.audit}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/tensor.py:1004(FakeItemVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:126(ComptimeVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:809(NumpyVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:92(_StrongRef)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:285(add)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:123(FuncTransform)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1108(get_zorder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/text.py:1370(OffsetFrom)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:75(VectorParse)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:121(SubplotParams)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:129(_LazyModule)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:668(_register_loader)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:427(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:49(PatchedPropertyBag)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:369(FlattenInputWithTreeSpecValidationStep)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:914(Exporter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:202(SubConfigProxy)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1711(numpy_method_wrapper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:128(ReadsWrites)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/guards.py:800(ExprCounter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:25(GuardFail)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:95(RandomValueSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:130(GlobalSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:173(AttrSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:390(SuperSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/constant.py:164(EnumVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:667(ListIteratorVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:25(MutableSideEffects)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:103(__eq__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:387(validate_fontstretch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/ElementTree.py:79(DefusedXMLParser)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:490(EnumType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:673(PyDecoder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:722(PyEncoder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:159(FuncScale)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2524(CloseMatch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3543(WordStart)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5363(TokenConverter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colorbar.py:123(_ColorbarSpine)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1186(add_callback)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1409(MouseEvent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:420(AxisScaleBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:179(FontMetrics)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:672(DejaVuFonts)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1496(Kern)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:31()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1567(DraggableOffsetBox)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:4002(set_navigate_mode)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:880(add_metaclass)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:1315(_genitem)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:322(Grid)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:462(PathPatch3D)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:264(buffer_rgba)\n", - " 3 0.000 0.000 0.000 0.000 {method 'copy' of 'mappingproxy' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:336(NullContextVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1272(XMLPullParser)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2790(TransformedPatchPath)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2583(Sawtooth)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1206(Hlist)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:168(UnitData)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:656(ConciseDateFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1268(AutoDateLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:430(HandlerRegularPolyCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:118(NavigationToolbar2Mac)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:232(_BackendMac)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:845(_is_valid_dispatch_type)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:442(WithExitFunctionVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffTags.py:23(TagInfo)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:601(PyCodec)\n", - " 2 0.000 0.000 0.000 0.000 {method 'pixel_access' of 'ImagingCore' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2299(Literal)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5430(Group)\n", - " 6 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_enums.py:20(_generate_next_value_)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1632(_draw)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1246(Event)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:211(FontInfo)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:81(get_projection_class)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:34(_axis_method_wrapper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend.py:54(DraggableLegend)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:995(rrulewrapper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_tricontour.py:8(TriContourSet)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:679(_register_writer)\n", - " 5 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/TiffImagePlugin.py:680(decorator)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:3986(set_navigate)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/lib/function_base.py:1316(_diff_dispatcher)\n", - " 1 0.000 0.000 0.000 0.000 {method 'squeeze' of 'numpy.ndarray' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:189(ThreadFlowLocation)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1730(numpy_operator_wrapper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1834(_Anchors)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:75(Unsupported)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:257(NegateSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:367(TypeSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:626(SliceVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:421(CUDAStreamVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:56(ExternalReferenceForbidden)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:276(PngInfo)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:628(LogitScale)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:125(LRUMemo)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_pylab_helpers.py:33(get_fig_manager)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:38(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/spines.py:487(SpinesProxy)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:3696(EllipseSelector)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:135(DecimalConverter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1253(tzical)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:156(GlobalWeakRefSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:250(AutogradFunctionVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:134(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1915(_Edge_integer)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3405(GoToColumn)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:360(ToolQuit)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_tight_bbox.py:37()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1098(AnchoredText)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:476(GridSpecFromSubplotSpec)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:310(ThetaTick)\n", - " 3 0.000 0.000 0.000 0.000 {method '__array_prepare__' of 'numpy.ndarray' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:343(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/fx/patcher.py:19(ONNXTorchPatcher)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:72(int8)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:182(KeyErrorMsg)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:766(TypingVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:915(GrouperView)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:76(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:333(silent_list)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1991(BoundaryNorm)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:1105(_ListDataStream)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:2119(NoNorm)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:310(FuncScaleLog)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpPaletteFile.py:22(GimpPaletteFile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1687(FixedLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1833(MultipleLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:282(p0)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2472(CaselessLiteral)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/actions.py:7(OnlyOnce)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:304(ToolCursorPosition)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3221(set_history_buttons)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:120(Output)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1139(Accent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1010(Node)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1162(List)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1428(_GlueSpec)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:106(PlaceHolderLayoutEngine)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:110(AxesWidget)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/category.py:118(StrCategoryLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:108(MovedModule)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:626(DateFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:521(HandlerErrorbar)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1156(_DOF_estimator_min_E)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:628(HandlerStem)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:281(ThetaLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:548(RadialTick)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PpmImagePlugin.py:53(PpmImageFile)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:274(release)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:163(StackFrame)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_exporter_states.py:8(ExportTypes)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:411(_reduce_op_symbolic)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/ctx_manager.py:67(GenericContextWrappingVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:6(Substitution)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:294(ArrayType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:328(StubImageFile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2261(Token)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2397(LArrow)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3762(Wedge)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1033(Box)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:420(PackerBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1071(_DOF_estimator_geom)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:380(StreamMask)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:38(UnsupportedOperatorError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:543(ProtobufExportOutputSerializer)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_analysis.py:169(FixedPointBox)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:23(MutableLocalBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/replay_record.py:18(DummyModule)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:163(validate_dpi)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:64(_ArtistPropertiesSubstitution)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageMode.py:22(ModeDescriptor)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:224(RawFunctionType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:328(StructOrUnionOrEnum)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageSequence.py:19(Iterator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:355(StrMethodFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:270(FixedFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2872(AutoMinorLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:332(RubberbandBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:437(ToolYScale)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:600(ToolHome)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:609(ToolBack)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:939(ComputerModernFontConstants)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:713(DejaVuSerifFonts)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:100(set_width_ratios)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:178(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1036(tzstr)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:398(HandlerLineCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trifinder.py:7(TriFinder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:166(HandlerNpoints)\n", - " 3 0.000 0.000 0.000 0.000 {built-in method atexit.register}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:1630(_simple_enum)\n", - " 1 0.000 0.000 0.000 0.000 {method 'pop' of 'collections.OrderedDict' objects}\n", - " 1 0.000 0.000 0.000 0.000 :52(normcase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/unittest/mock.py:1257(_check_spec_arg_typos)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset9.py:2168(wrap_logical_op_with_cast_to)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:51(IndexExpression)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:125(UserError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:1391(suppress_torch_distributed_warnings)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:45(GuardedCode)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:144(DummyGlobalSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:490(NumpyTensorSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/base.py:94(HasPostInit)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:313(WrappedUserMethodVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:18(DefusedXmlException)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:178(UnknownIntegerType)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:96(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1658(IndexLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3569(WordEnd)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:155(Greek)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2284(NoMatch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3483(LineEnd)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:845(get_animated)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:380(ToolGrid)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:934(ToolCopyToClipboardBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1448(Glue)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:7(SpecLoaderAdapter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/_base.py:95(_TransformedBoundsLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:1592(DraggableAnnotation)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1589(ParserError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1501(YearLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/rrule.py:66(weekday)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:208(HandlerNpointsYoffsets)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:314(HandlerPatch)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:37()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_agg.py:540(_BackendAgg)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:972(__set_name__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_funcs.py:59(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:87(ONNXFakeContext)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:536(CleanupManager)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:998(_recomputation_hook)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:884(NullVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:39(EntitiesForbidden)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_util.py:14(DeferredError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:72(BaseType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/scale.py:89(LinearScale)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:262(NullFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2271(BlendedAffine2D)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:192(_should_enable_warnings)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:256(RecursiveGrammarException)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:130(BasicMultilingualPlane)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3506(StringStart)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4443(_Indent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3511(BracketAB)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/widgets.py:1877(SubplotTool)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/style/core.py:217(update_nested_dict)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:876(AutoDateFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:42(BarContainer)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/enum.py:809(__members__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/context.py:264(RuntimeErrorWithDiagnostic)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_exporter_states.py:17(SymbolicContext)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:174(BindInputStep)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:1043(OnnxExporterError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:1689(numpy_to_tensor_wrapper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pstats.py:522(TupleComp)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:180(dynamo_timed)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:48(InvalidBackend)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:757(ExportResult)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1015(WrapHigherOrderVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:483(LambdaVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:85(VoidType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:192(UnknownFloatType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1092(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1100(_fdat)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:257(_set_locator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:164(UnboundedMemo)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:143(LatinA)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3775(_ErrorStop)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3436(LineStart)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5467(Dict)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/collections.py:1275(BrokenBarHCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1089(get_label)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:148(SmallFilledCircles)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/contour.py:29(ClabelText)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:3484(ShowBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:370(ToolQuitAll)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:395(ToolMinorGrid)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:410(ToolFullScreen)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:447(ToolXScale)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:618(ToolForward)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2476(Round)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3674(Fancy)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1390(Rule)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:13(ToolTriggerEvent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/__init__.py:8(_SubplotBaseMeta)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:572(__init__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:199(__get_module)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:245(_MovedItems)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:91(_LazyDescr)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:8(_TzSingleton)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/geo.py:18(ThetaFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:249(StreamplotSet)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:719(HandlerTuple)\n", - " 4 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:5602(postParse)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:450(_create_exit_wrapper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1130(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:61(_create_beartype_decorator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/bytecode_transformation.py:82(_NotProvided)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:152(name)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:353(TupleIteratorGetItemSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:440(NNModuleSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:615(PythonModuleVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:193(InlinedClosureVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:20(MatplotlibDeprecationWarning)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:85(List)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3523(StringEnd)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1378(_attr)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/types.py:130(_calculate_meta)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/functools.py:421(_unwrap_partial)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/typing.py:1544(__repr__)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/linalg/linalg.py:465(_unary_dispatcher)\n", - " 1 0.000 0.000 0.000 0.000 {method 'popitem' of 'dict' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:26(InputAdaptStep)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:457(FlattenOutputWithTreeSpecValidationStep)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/config_utils.py:167(ContextDecorator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:78(int16)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/utils.py:269(reset)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:432(RunOnlyContext)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:441(DisableContext)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:141(GatherTraceback)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/checkpoint_wrapper.py:99(OffloadWrapper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:506(ShapeEnvSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:38(AttributeMutation)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:183(ClosureVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:282(__init__)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:341(validate_aspect)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementPath.py:350(_SelectorContext)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:261(PointerType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:5(CDefError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpGradientFile.py:66(GradientFile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:8(_lazyclassproperty)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:195(Cyrillic)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:235(Kanji)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:254(Katakana)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:293(Thai)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2273(Empty)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4449(_IndentGreater)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:14(HorizontalHatch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1484(PickEvent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:634(SaveFigureBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1629(Done)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:910(_JSONEncoder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2325(Square)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3473(BracketA)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:731(DejaVuSansFonts)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/figure.py:82(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/resources/_adapters.py:20(TraversableResourcesLoader)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axis.py:564(_LazyTickList)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:72(AxisInfo)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:144(MovedAttribute)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1839(ConciseDateConverter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:772(HandlerPolyCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/mpl_toolkits/mplot3d/art3d.py:347(Collection3D)\n", - " 4 0.000 0.000 0.000 0.000 {method 'remove' of 'set' objects}\n", - " 1 0.000 0.000 0.000 0.000 {method 'isdisjoint' of 'set' objects}\n", - " 1 0.000 0.000 0.000 0.000 {built-in method torch._C._dynamo.eval_frame.set_guard_error_hook}\n", - " 2 0.000 0.000 0.000 0.000 {built-in method matplotlib._c_internal_utils.display_is_valid}\n", - " 3 0.000 0.000 0.000 0.000 :2(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/__init__.py:346(ExecutableNotFoundError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:26(OnnxExporterError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:62(SymbolicValueError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/_beartype.py:51(CallHintViolationWarning)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:495(ExportOutputSerializer)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/exporter.py:1035(UnsatisfiedDependencyError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:81(OutputAdaptStep)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:228(LiftParametersAndBuffersIntoArgsStep)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:107(CondOpArgsMismatchError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:97(ArgsMismatchError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/logging_tensor.py:85(LoggingTensorMode)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:75(ProfilerStartHook)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:464(GlobalStateSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/functions.py:330(WrappedUserFunctionVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/nn_module.py:780(FSDPManagedNNModuleVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:54(AttributeMutationNew)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:747(_DunderChecker)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:223(deprecate_privatize_attribute)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/__init__.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:590(PyCodecState)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1732(NullLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:304(FuncFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:149(LatinB)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:242(Hiragana)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:308(Hebrew)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4899(_NullToken)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cm.py:95(__iter__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:87(Shapes)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:132(SmallCircles)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:111(_Unset)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1288(DrawEvent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1315(ResizeEvent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3595(Simple)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2763(Arc3)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3434(Curve)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3573(CurveBracket)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1563(AutoWidthChar)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:950(STIXFontConstants)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:4(ToolEvent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:467(VPacker)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:340(Module_six_moves_urllib_parse)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1683(SecondLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:109(StemContainer)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/polar.py:241(ThetaFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_trirefine.py:12(TriRefiner)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/BmpImagePlugin.py:362(DibImageFile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py:1174(native_id)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/infra/_infra.py:263(Invocation)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/registration.py:210(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/types.py:84(ProfilerEndHook)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:452(NotNNModuleSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:297(CondHigherOrderVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/side_effects.py:48(AttributeMutationExisting)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:88(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PngImagePlugin.py:1089(_idat)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:187(TickHelper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1046(LogFormatterMathtext)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:81(_UnboundedCache)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:208(Chinese)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:268(Hangul)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:322(Devanagari)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1533(KeyEvent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2905(Arc)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3492(BracketB)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3551(BracketCurve)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1061(Hbox)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:161(Registry)\n", - " 3 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:543(__enter__)\n", - " 2 0.000 0.000 0.000 0.000 {method 'toordinal' of 'datetime.date' objects}\n", - " 1 0.000 0.000 0.000 0.000 {method 'move_to_end' of 'collections.OrderedDict' objects}\n", - " 2 0.000 0.000 0.000 0.000 {method '__exit__' of 'posix.ScandirIterator' objects}\n", - " 1 0.000 0.000 0.000 0.000 {method 'append' of 'collections.deque' objects}\n", - " 1 0.000 0.000 0.000 0.000 {built-in method _elementtree._set_factories}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:47(inexact)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:210(MergeKwargsIntoArgsStep)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:307(RemoveNonTensorInputStep)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:84(int32)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:90(int64)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:99(uint8)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:114(float32)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:126(complex64)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:55(ResetRequired)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:67(BackendCompilerFailed)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/eval_frame.py:527(_NullDecorator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:1045(_checkpoint_hook)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:198(ParamBufferSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/source.py:458(FSDPNNModuleSource)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:202(NewCellVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_api/deprecation.py:308(_deprecated_parameter_class)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/cbook.py:100(__call__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_docstring.py:50(_ArtistKwdocLoader)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:350(validate_fontsize_None)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/__init__.py:75(UnidentifiedImageError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/ElementTree.py:106(ParseError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:239(FunctionPtrType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:285(NamedPointerType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:2852(AutoLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:220(ParseException)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:136(Latin1)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:300(Arabic)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:3398(PositionToken)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:48(NorthEastHatch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:31(VerticalHatch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:67(SouthEastHatch)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:9(HatchPatternBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:157(Stars)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:588(ViewsPositionsBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2642(Roundtooth)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2711(SimpleEvent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2348(Circle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2439(DArrow)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2534(Round4)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2801(Angle3)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2841(Angle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3001(Bar)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3533(BarAB)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dviread.py:782(Tfm)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:959(STIXSansFontConstants)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1054(Vbox)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1476(HCentered)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1523(AutoHeightChar)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_managers.py:20(ToolManagerMessageEvent)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/layout_engine.py:125(execute)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/offsetbox.py:499(HPacker)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/projections/__init__.py:72(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:661(_result)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:373(_tzfile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:25(_TzOffsetFactory)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:55(_TzStrFactory)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1551(MonthLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1578(WeekdayLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1605(DayLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1633(HourLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/dates.py:1658(MinuteLocator)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/tz.py:1156(_tzicalvtzcomp)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/container.py:77(ErrorbarContainer)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:275(HandlerLine2D)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/tri/_triinterpolate.py:1061(_DOF_estimator_user)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/BmpImagePlugin.py:288(BmpRleDecoder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_util.py:22(AxisError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:249(ConvertComplexToRealRepresentationInputStep)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:281(RemoveNoneInputStep)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:411(FlattenOutputStep)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:108(float16)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:138(bool_)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:36(RestartAnalysis)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:567(ShapeVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:622(FunctorchGradHigherOrderVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:792(FunctorchVmapHigherOrderVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:207(NewGlobalVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:204(BaseFunctionType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/ImageFile.py:75(_tilesort)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:332(FormatStrFormatter)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4835(OneOrMore)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:2429(RArrow)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1486(VCentered)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/_factories.py:19(_TzFactory)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:503(HandlerPathCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/__init__.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backends/backend_macosx.py:16(TimerMac)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/numpy/core/multiarray.py:968(ravel_multi_index)\n", - " 1 0.000 0.000 0.000 0.000 {method 'close' of 'generator' objects}\n", - " 2 0.000 0.000 0.000 0.000 {built-in method _stat.S_ISREG}\n", - " 1 0.000 0.000 0.000 0.000 :1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/linalg.py:13(LinAlgError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:39(number)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:20(OnnxExporterWarning)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/io_adapter.py:431(ConvertComplexToRealRepresentationOutputStep)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:120(float64)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:132(complex128)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:102(AttributeMutationError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:28(TorchDynamoException)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:32(InternalTorchDynamoError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:716(_Handle)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:762(_CheckpointFrame)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:579(ExecutorchCallDelegateHigherOrderVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1142(ExportTracepointHigherOrderVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/builder.py:148(_missing)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/packaging/version.py:55(InvalidVersion)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:2(FFIError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:17(VerificationError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:97(BasePrimitiveType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/GimpGradientFile.py:104(GimpGradientFile)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1030(LogFormatterExponent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/transforms.py:2607(BboxTransformToMaxOnly)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/bezier.py:25(NonIntersectingPathException)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/util.py:102(_FifoCache)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2344(_SingleCharLiteral)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:2853(_WordRegex)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/core.py:4672(Located)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/hatch.py:140(LargeCircles)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/artist.py:1076(set_in_layout)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1223(_timer_set_single_shot)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_tools.py:627(ConfigureSubplotsBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:1420(Vrule)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:864(StixSansFonts)\n", - " 2 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/gridspec.py:69()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:438(TerminateTrajectory)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/PpmImagePlugin.py:279(PpmDecoder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/inspect.py:729(getmro)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py:1590(main_thread)\n", - " 1 0.000 0.000 0.000 0.000 :1(__create_fn__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:43(integer)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:143(IncorrectUsage)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:994(_StopRecomputationError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:938(AutogradFunctionMethodHigherOrderVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/higher_order_ops.py:1080(OutDtypeHigherOrderVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:897(DeletedVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/optimizer.py:17(ArgMappingException)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/rcsetup.py:874(_ignorecase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/colors.py:1796(FuncNorm)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:85(DecompressionBombWarning)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2844(ImagePointHandler)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:2853(ImageTransformHandler)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:22(VerificationMissing)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/error.py:28(PkgConfigError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:482(StructType)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/cffi/model.py:486(UnionType)\n", - " 1 0.000 0.000 0.000 0.000 {method 'cleanup' of 'ImagingEncoder' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/ticker.py:1093(LogFormatterSciNotation)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/results.py:8()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1335(CloseEvent)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3463(CurveFilledB)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_blocking_input.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/units.py:52(ConversionError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/isoparser.py:43(__init__)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:402(Module_six_moves_urllib_request)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:454(Module_six_moves_urllib_response)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/legend_handler.py:513(HandlerCircleCollection)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/pathlib.py:43(_is_wildcard_pattern)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/__init__.py:45()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/glob.py:213(_join)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_util.py:26(UFuncTypeError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:63(complexfloating)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/symbolic_opset13.py:24(_apply_params)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:40(SkipFrame)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:720(_Holder)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/user_defined.py:35(UserDefinedVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:120(DelayGraphBreakVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/optimizer.py:21(GuardInstallException)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/decorators.py:100(_disallow_in_graph_helper)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:240(ParseFatalException)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:247(ParseSyntaxException)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/unicode.py:290(CJK)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/_version.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:2574(NonGuiException)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:382(Module_six_moves_urllib_error)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:475(Module_six_moves_urllib_robotparser)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:434(InvalidIndexError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/streamplot.py:510(OutOfBounds)\n", - " 2 0.000 0.000 0.000 0.000 {method '__prepare__' of 'type' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/collections/__init__.py:658(update)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py:345(__enter__)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method _thread.get_native_id}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/cuda/__init__.py:222(is_initialized)\n", - " 1 0.000 0.000 0.000 0.000 {built-in method matplotlib.backends._macosx.event_loop_is_running}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:51(signedinteger)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:55(unsignedinteger)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/errors.py:32(CheckerError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_numpy/_dtypes.py:59(floating)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:44(TorchRuntimeError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/exc.py:93(RecompileError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/utils/checkpoint.py:917(CheckpointError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/lists.py:707(TupleIteratorVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/variables/misc.py:114(UnknownVariable)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/Image.py:89(DecompressionBombError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/PIL/_version.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/defusedxml/common.py:71(NotSupportedError)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/parsers/__init__.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/pyparsing/exceptions.py:11(ExceptionWordUnicode)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1868(draw)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/font_manager.py:1498()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3443(CurveA)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3453(CurveAB)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3458(CurveFilledA)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3468(CurveFilledAB)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:970(DejaVuSansFontConstants)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/axes/__init__.py:14(SubplotBase)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/six.py:239(exec_module)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/parser/_parser.py:1608(UnknownTimezoneWarning)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/dateutil/tz/__init__.py:11(DeprecatedTzFormatWarning)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/testing/_internal/__init__.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/xml/etree/__init__.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/patches.py:3448(CurveB)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_mathtext.py:966(DejaVuSerifFontConstants)\n", - " 1 0.000 0.000 0.000 0.000 {method 'islower' of 'bytes' objects}\n", - " 1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/__init__.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/allowed_functions.py:249(_allowed_user_defined_function_ids)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/onnx/_internal/diagnostics/_diagnostic.py:107(background_context)\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/_dynamo/backends/__init__.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/torch/distributed/algorithms/_checkpoint/__init__.py:1()\n", - " 1 0.000 0.000 0.000 0.000 /Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/backend_bases.py:1220(_timer_set_interval)\n", - " 1 0.000 0.000 0.000 0.000 :1363(exec_module)\n", - "\n", - "\n" - ] - }, - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 9, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "pstats.Stats(str(latest_profile)).sort_stats(\"cumulative\").print_stats()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "e0d17747", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.11.2" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -} diff --git a/placement.py b/placement.py index 70f4c78..bf26f33 100644 --- a/placement.py +++ b/placement.py @@ -40,6 +40,7 @@ import os from enum import IntEnum +from datetime import datetime import torch import torch.optim as optim @@ -429,6 +430,7 @@ def train_placement( lambda_overlap=1.0, verbose=True, log_interval=100, + run_metadata=None, ): """Train the placement optimization using gradient descent. @@ -462,7 +464,24 @@ def train_placement( optim.lr_scheduler.ReduceLROnPlateau(optimizer=optimizer) # Track loss history + history_run_metadata = { + "run_label": "train_placement", + "run_started_at": datetime.now().isoformat(timespec="seconds"), + "num_epochs": num_epochs, + "lr": lr, + "lambda_wirelength": lambda_wirelength, + "lambda_overlap": lambda_overlap, + "log_interval": log_interval, + "verbose": verbose, + "total_cells": int(cell_features.shape[0]), + "total_pins": int(pin_features.shape[0]), + "total_edges": int(edge_list.shape[0]), + } + if run_metadata: + history_run_metadata.update(run_metadata) + loss_history = { + "run_metadata": history_run_metadata, "total_loss": [], "wirelength_loss": [], "overlap_loss": [], @@ -837,6 +856,12 @@ def main(): edge_list, verbose=True, log_interval=200, + run_metadata={ + "runner": "placement.main", + "seed": 42, + "num_macros": num_macros, + "num_std_cells": num_std_cells, + }, ) loss_history_path = save_loss_history_csv(result["loss_history"], OUTPUT_DIR) print(f"Loss history saved to: {loss_history_path}") diff --git a/test.py b/test.py index f22ff21..580e72d 100644 --- a/test.py +++ b/test.py @@ -24,10 +24,12 @@ # Import from the challenge file from placement import ( + OUTPUT_DIR, calculate_normalized_metrics, generate_placement_input, train_placement, ) +from loss_tracking_utils import save_loss_history_csv # Test case configurations: (test_id, num_macros, num_std_cells, seed) @@ -46,8 +48,8 @@ (9, 8, 200, 1009), (10, 10, 2000, 1010), # Realistic designs - (11, 10, 10000, 1011), - (12, 10, 100000, 1012), + # (11, 10, 10000, 1011), + # (12, 10, 100000, 1012), ] @@ -97,8 +99,16 @@ def run_placement_test( pin_features, edge_list, verbose=False, # Suppress per-epoch output + run_metadata={ + "runner": "test.py", + "test_id": test_id, + "seed": seed, + "num_macros": num_macros, + "num_std_cells": num_std_cells, + }, ) elapsed_time = time.time() - start_time + loss_history_path = save_loss_history_csv(result["loss_history"], OUTPUT_DIR) # Calculate final metrics using shared implementation final_cell_features = result["final_cell_features"] @@ -112,6 +122,7 @@ def run_placement_test( "num_nets": metrics["num_nets"], "seed": seed, "elapsed_time": elapsed_time, + "loss_history_path": loss_history_path, # Final metrics "num_cells_with_overlaps": metrics["num_cells_with_overlaps"], "overlap_ratio": metrics["overlap_ratio"], @@ -161,6 +172,7 @@ def run_all_tests(): print(f" Overlap Ratio: {result['overlap_ratio']:.4f} ({result['num_cells_with_overlaps']}/{result['total_cells']} cells)") print(f" Normalized WL: {result['normalized_wl']:.4f}") print(f" Time: {result['elapsed_time']:.2f}s") + print(f" History: {result['loss_history_path']}") print(f" Status: {status}") print() From 52abefa78600e9dac109ad759429b84999b07f47 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 19 Apr 2026 16:19:16 -0700 Subject: [PATCH 05/48] add per test case loss tracking notebooks --- lab/loss_tracking.ipynb | 163 ++++++++++++++++++++++++++++++++++++++++ loss_tracking_utils.py | 66 ++++++++++++++++ 2 files changed, 229 insertions(+) create mode 100644 lab/loss_tracking.ipynb create mode 100644 loss_tracking_utils.py diff --git a/lab/loss_tracking.ipynb b/lab/loss_tracking.ipynb new file mode 100644 index 0000000..bbb98cc --- /dev/null +++ b/lab/loss_tracking.ipynb @@ -0,0 +1,163 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": null, + "id": "imports-cell", + "metadata": {}, + "outputs": [], + "source": [ + "from pathlib import Path\n", + "\n", + "import matplotlib.pyplot as plt\n", + "import pandas as pd\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "load-latest-loss-history", + "metadata": {}, + "outputs": [], + "source": [ + "loss_history_dir = Path(\"../loss_history\")\n", + "loss_history_paths = sorted(loss_history_dir.glob(\"loss_history_*.csv\"))\n", + "\n", + "if not loss_history_paths:\n", + " raise FileNotFoundError(f\"No loss history files found in {loss_history_dir.resolve()}\")\n", + "\n", + "loss_frames = []\n", + "for path in loss_history_paths:\n", + " run_df = pd.read_csv(path)\n", + " run_df[\"source_file\"] = path.name\n", + " if \"run_id\" not in run_df.columns:\n", + " run_df[\"run_id\"] = path.stem.replace(\"loss_history_\", \"\")\n", + " if \"test_id\" in run_df.columns:\n", + " run_df[\"test_id\"] = pd.to_numeric(run_df[\"test_id\"], errors=\"coerce\").astype(\"Int64\")\n", + " loss_frames.append(run_df)\n", + "\n", + "loss_df = pd.concat(loss_frames, ignore_index=True)\n", + "sort_columns = [col for col in [\"test_id\", \"run_id\", \"epoch\"] if col in loss_df.columns]\n", + "loss_df = loss_df.sort_values(sort_columns).reset_index(drop=True)\n", + "\n", + "available_runs = (\n", + " loss_df[[\"test_id\", \"seed\", \"run_id\", \"source_file\"]]\n", + " .drop_duplicates()\n", + " .sort_values([col for col in [\"test_id\", \"run_id\"] if col in loss_df.columns])\n", + " .reset_index(drop=True)\n", + ")\n", + "\n", + "test_case_runs = (\n", + " available_runs.groupby(\"test_id\", dropna=False)\n", + " .agg(\n", + " run_count=(\"run_id\", \"nunique\"),\n", + " seeds=(\"seed\", lambda s: sorted({int(v) for v in s.dropna()})),\n", + " latest_run_id=(\"run_id\", \"max\"),\n", + " )\n", + " .reset_index()\n", + " .sort_values(\"test_id\", na_position=\"last\")\n", + ")\n", + "\n", + "print(f\"Loaded {len(available_runs)} runs from {loss_history_dir.resolve()}\")\n", + "test_case_runs\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "list-individual-runs", + "metadata": {}, + "outputs": [], + "source": [ + "available_runs\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "plot-loss-history", + "metadata": {}, + "outputs": [], + "source": [ + "fig, axes = plt.subplots(2, 1, figsize=(14, 10), sharex=True)\n", + "\n", + "for run_id, run_df in loss_df.groupby(\"run_id\", sort=True):\n", + " run_label = f\"run {run_id}\"\n", + " if \"test_id\" in run_df.columns and run_df[\"test_id\"].notna().any():\n", + " run_label = f\"test {int(run_df['test_id'].dropna().iloc[0])} | {run_label}\"\n", + " if \"seed\" in run_df.columns and run_df[\"seed\"].notna().any():\n", + " run_label = f\"{run_label} | seed {int(run_df['seed'].dropna().iloc[0])}\"\n", + "\n", + " axes[0].plot(run_df[\"epoch\"], run_df[\"total_loss\"], label=f\"total {run_label}\", alpha=0.8)\n", + " axes[0].plot(\n", + " run_df[\"epoch\"],\n", + " run_df[\"wirelength_loss\"],\n", + " linestyle=\"--\",\n", + " label=f\"wirelength {run_label}\",\n", + " alpha=0.7,\n", + " )\n", + " axes[0].plot(\n", + " run_df[\"epoch\"],\n", + " run_df[\"overlap_loss\"],\n", + " linestyle=\":\",\n", + " label=f\"overlap {run_label}\",\n", + " alpha=0.7,\n", + " )\n", + "\n", + " if \"overlap_count\" in run_df.columns:\n", + " axes[1].plot(run_df[\"epoch\"], run_df[\"overlap_count\"], label=f\"count {run_label}\", alpha=0.8)\n", + " if \"total_overlap_area\" in run_df.columns:\n", + " axes[1].plot(\n", + " run_df[\"epoch\"],\n", + " run_df[\"total_overlap_area\"],\n", + " linestyle=\"--\",\n", + " label=f\"total area {run_label}\",\n", + " alpha=0.7,\n", + " )\n", + " if \"max_overlap_area\" in run_df.columns:\n", + " axes[1].plot(\n", + " run_df[\"epoch\"],\n", + " run_df[\"max_overlap_area\"],\n", + " linestyle=\":\",\n", + " label=f\"max area {run_label}\",\n", + " alpha=0.7,\n", + " )\n", + "\n", + "axes[0].set_ylabel(\"Loss\")\n", + "axes[0].set_title(\"Loss History By Run\")\n", + "axes[0].legend(loc=\"center left\", bbox_to_anchor=(1.02, 0.5))\n", + "axes[0].grid(True, alpha=0.3)\n", + "\n", + "axes[1].set_xlabel(\"Epoch\")\n", + "axes[1].set_ylabel(\"Overlap\")\n", + "axes[1].set_title(\"Overlap Metrics By Run\")\n", + "axes[1].legend(loc=\"center left\", bbox_to_anchor=(1.02, 0.5))\n", + "axes[1].grid(True, alpha=0.3)\n", + "\n", + "plt.tight_layout()\n", + "plt.show()\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.2" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/loss_tracking_utils.py b/loss_tracking_utils.py new file mode 100644 index 0000000..313c4b7 --- /dev/null +++ b/loss_tracking_utils.py @@ -0,0 +1,66 @@ +import csv +import os +from datetime import datetime + + +def save_loss_history_csv(loss_history, output_dir, run_metadata=None): + """Save loss history values to a CSV file.""" + loss_history_dir = os.path.join(output_dir, "loss_history") + os.makedirs(loss_history_dir, exist_ok=True) + + timestamp = datetime.now().strftime("%Y%m%d_%H%M%S_%f") + output_path = os.path.join( + loss_history_dir, f"loss_history_{timestamp}.csv" + ) + metadata = dict(loss_history.get("run_metadata", {})) + if run_metadata: + metadata.update(run_metadata) + + metadata.setdefault("run_id", timestamp) + metadata.setdefault("saved_at", datetime.now().isoformat(timespec="seconds")) + + total_loss = loss_history.get("total_loss", []) + wirelength_loss = loss_history.get("wirelength_loss", []) + overlap_loss = loss_history.get("overlap_loss", []) + overlap_count = loss_history.get("overlap_count", []) + total_overlap_area = loss_history.get("total_overlap_area", []) + max_overlap_area = loss_history.get("max_overlap_area", []) + + row_count = max( + len(total_loss), + len(wirelength_loss), + len(overlap_loss), + len(overlap_count), + len(total_overlap_area), + len(max_overlap_area), + ) + + with open(output_path, "w", newline="", encoding="utf-8") as csv_file: + writer = csv.writer(csv_file) + metadata_fields = list(metadata.keys()) + metric_fields = [ + "epoch", + "total_loss", + "wirelength_loss", + "overlap_loss", + "overlap_count", + "total_overlap_area", + "max_overlap_area", + ] + writer.writerow(metadata_fields + metric_fields) + + for epoch in range(row_count): + metric_row = [ + epoch, + total_loss[epoch] if epoch < len(total_loss) else "", + wirelength_loss[epoch] if epoch < len(wirelength_loss) else "", + overlap_loss[epoch] if epoch < len(overlap_loss) else "", + overlap_count[epoch] if epoch < len(overlap_count) else "", + total_overlap_area[epoch] + if epoch < len(total_overlap_area) + else "", + max_overlap_area[epoch] if epoch < len(max_overlap_area) else "", + ] + writer.writerow([metadata[field] for field in metadata_fields] + metric_row) + + return output_path From a9d50052819d5440dd77333d5c20d4b43d990538 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 19 Apr 2026 20:50:19 -0700 Subject: [PATCH 06/48] use sqlite to track loss instead of csvs --- .gitignore | 1 + lab/loss_tracking.ipynb | 208 +++++++++++++++++++++++++++----- lab/profiling.ipynb | 20 +--- loss_tracking_utils.py | 260 +++++++++++++++++++++++++++++++++++----- placement.py | 11 +- test.py | 12 +- 6 files changed, 433 insertions(+), 79 deletions(-) diff --git a/.gitignore b/.gitignore index 4218587..cf9c59e 100644 --- a/.gitignore +++ b/.gitignore @@ -7,4 +7,5 @@ */.ipynb_checkpoints/* profile/* loss_history/* +loss_tracking/* **/__pycache__/** \ No newline at end of file diff --git a/lab/loss_tracking.ipynb b/lab/loss_tracking.ipynb index bbb98cc..e4d05b9 100644 --- a/lab/loss_tracking.ipynb +++ b/lab/loss_tracking.ipynb @@ -2,12 +2,13 @@ "cells": [ { "cell_type": "code", - "execution_count": null, + "execution_count": 16, "id": "imports-cell", "metadata": {}, "outputs": [], "source": [ "from pathlib import Path\n", + "import sqlite3\n", "\n", "import matplotlib.pyplot as plt\n", "import pandas as pd\n" @@ -15,35 +16,121 @@ }, { "cell_type": "code", - "execution_count": null, - "id": "load-latest-loss-history", + "execution_count": 17, + "id": "load-loss-history-db", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Loading latest database: ../loss_tracking/loss_tracking_20260419_204825_830487.sqlite3\n", + "Loaded 1 runs from /Users/vrajpandya/repo/intern_challenge/loss_tracking/loss_tracking_20260419_204825_830487.sqlite3\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
test_idrun_countseedslatest_run_id
0<NA>1[42]20260419_204827_816977
\n", + "
" + ], + "text/plain": [ + " test_id run_count seeds latest_run_id\n", + "0 1 [42] 20260419_204827_816977" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "loss_history_dir = Path(\"../loss_history\")\n", - "loss_history_paths = sorted(loss_history_dir.glob(\"loss_history_*.csv\"))\n", + "loss_tracking_dir = Path(\"../loss_tracking\")\n", + "db_paths = sorted(loss_tracking_dir.glob(\"loss_tracking_*.sqlite3\"))\n", + "\n", + "if not db_paths:\n", + " raise FileNotFoundError(f\"No SQLite loss history database found in {loss_tracking_dir.resolve()}\")\n", "\n", - "if not loss_history_paths:\n", - " raise FileNotFoundError(f\"No loss history files found in {loss_history_dir.resolve()}\")\n", + "db_path = max(db_paths, key=lambda path: path.stat().st_mtime)\n", + "print(f\"Loading latest database: {db_path}\")\n", "\n", - "loss_frames = []\n", - "for path in loss_history_paths:\n", - " run_df = pd.read_csv(path)\n", - " run_df[\"source_file\"] = path.name\n", - " if \"run_id\" not in run_df.columns:\n", - " run_df[\"run_id\"] = path.stem.replace(\"loss_history_\", \"\")\n", - " if \"test_id\" in run_df.columns:\n", - " run_df[\"test_id\"] = pd.to_numeric(run_df[\"test_id\"], errors=\"coerce\").astype(\"Int64\")\n", - " loss_frames.append(run_df)\n", + "with sqlite3.connect(db_path) as connection:\n", + " loss_df = pd.read_sql_query(\n", + " \"\"\"\n", + " SELECT\n", + " lh.run_id,\n", + " lh.epoch,\n", + " lh.total_loss,\n", + " lh.wirelength_loss,\n", + " lh.overlap_loss,\n", + " lh.overlap_count,\n", + " lh.total_overlap_area,\n", + " lh.max_overlap_area,\n", + " r.runner,\n", + " r.run_label,\n", + " r.run_started_at,\n", + " r.saved_at,\n", + " r.num_epochs,\n", + " r.lr,\n", + " r.lambda_wirelength,\n", + " r.lambda_overlap,\n", + " r.log_interval,\n", + " r.verbose,\n", + " r.total_cells,\n", + " r.total_pins,\n", + " r.total_edges,\n", + " COALESCE(tc.test_id, r.test_id) AS test_id,\n", + " COALESCE(tc.num_macros, r.num_macros) AS num_macros,\n", + " COALESCE(tc.num_std_cells, r.num_std_cells) AS num_std_cells,\n", + " COALESCE(tc.seed, r.seed) AS seed\n", + " FROM loss_history AS lh\n", + " JOIN runs AS r ON r.run_id = lh.run_id\n", + " LEFT JOIN test_cases AS tc ON tc.test_id = r.test_id\n", + " ORDER BY tc.test_id, lh.run_id, lh.epoch\n", + " \"\"\",\n", + " connection,\n", + " )\n", "\n", - "loss_df = pd.concat(loss_frames, ignore_index=True)\n", - "sort_columns = [col for col in [\"test_id\", \"run_id\", \"epoch\"] if col in loss_df.columns]\n", - "loss_df = loss_df.sort_values(sort_columns).reset_index(drop=True)\n", + "if \"test_id\" in loss_df.columns:\n", + " loss_df[\"test_id\"] = pd.to_numeric(loss_df[\"test_id\"], errors=\"coerce\").astype(\"Int64\")\n", "\n", "available_runs = (\n", - " loss_df[[\"test_id\", \"seed\", \"run_id\", \"source_file\"]]\n", + " loss_df[[\"test_id\", \"seed\", \"run_id\", \"runner\", \"run_label\", \"saved_at\"]]\n", " .drop_duplicates()\n", - " .sort_values([col for col in [\"test_id\", \"run_id\"] if col in loss_df.columns])\n", + " .sort_values([\"test_id\", \"run_id\"], na_position=\"last\")\n", " .reset_index(drop=True)\n", ")\n", "\n", @@ -58,26 +145,93 @@ " .sort_values(\"test_id\", na_position=\"last\")\n", ")\n", "\n", - "print(f\"Loaded {len(available_runs)} runs from {loss_history_dir.resolve()}\")\n", + "print(f\"Loaded {len(available_runs)} runs from {db_path.resolve()}\")\n", "test_case_runs\n" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 18, "id": "list-individual-runs", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
test_idseedrun_idrunnerrun_labelsaved_at
0<NA>4220260419_204827_816977placement.maintrain_placement2026-04-19T20:48:27
\n", + "
" + ], + "text/plain": [ + " test_id seed run_id runner run_label \\\n", + "0 42 20260419_204827_816977 placement.main train_placement \n", + "\n", + " saved_at \n", + "0 2026-04-19T20:48:27 " + ] + }, + "execution_count": 18, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "available_runs\n" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 19, "id": "plot-loss-history", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABWkAAAPeCAYAAAB+8pgoAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/H5lhTAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdeXxM1/8/8Ndkn6wksspGgtiDtmloUUKQKqWlKBFUkahIa/tWrUVpLW2ttQRFaynaii1FUktsIXaxiyUbsu+ZOb8//HI/RhKSNHEjeT0fj3m0c+65577PfY/g7cy5CiGEABERERERERERERHJQkvuAIiIiIiIiIiIiIiqMxZpiYiIiIiIiIiIiGTEIi0RERERERERERGRjFikJSIiIiIiIiIiIpIRi7REREREREREREREMmKRloiIiIiIiIiIiEhGLNISERERERERERERyYhFWiIiIiIiIiIiIiIZsUhLREREREREREREJCMWaYmIiCoBhUKBadOmyR0GERERERERyYBFWiIiem2sXbsWCoUCp0+fljuUF5o2bRoUCgUePXpU5HFnZ2e8//77//k6mzZtwqJFi/7zOBVBoVBovIyMjNCoUSN8++23yMzMLLfrFNzrgpeuri6cnZ3xxRdfIDk5udyuQ0REREREVJF05A6AiIiIgKysLOjolO635U2bNuHixYsIDAysmKD+o06dOmHQoEEAgPT0dBw+fBjffPMNzp07h61bt5brtZYtWwZjY2NkZGTgwIED+Pnnn3HmzBkcOXKkXK9DRERERERUEVikJSIiqgQMDAzkDgEAkJ+fD7VaDT09vf88Vv369fHpp59K70eMGIHc3Fxs374d2dnZ5Trnjz76CLVq1QIAfP755/jkk0+wefNmnDx5Em+99Va5XYeIiIiIiKgicLsDIiKqcs6ePYuuXbvC1NQUxsbG6NixI44fP67RJy8vD9OnT0e9evVgYGAACwsLvPPOOwgNDZX6xMXFwc/PD/b29tDX14etrS169OiBO3fulHvMz+9Jm5aWhsDAQDg7O0NfXx9WVlbo1KkTzpw5AwBo3749QkJCcPfuXemr/s7OztL5CQkJGDp0KKytrWFgYIDmzZtj3bp1Gte8c+cOFAoFfvjhByxatAguLi7Q19fHyZMnYWRkhDFjxhSK8/79+9DW1sacOXPKNE8bGxsoFApp1fDU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dcSIEXKHR5VcmVbSNm/eHIsXL8ZPP/2k0b548WI0a9asXAKjqquGUhdC7yFy8vRxIyENTWrXkDskIiIiIiIiekW2bNkidwj0irzxxhvSQ6+qgxkzZuCrr74q8lhl2xqzIrm7u2Pw4MFyh/HaKVORdt68efDx8cE///wDT09PAEBERATu3btXbk96o6rL0dQR7mZdcfOBIa7Hp7NIS0RERERERFQFKZVKuLpWj2fRAICVlRWsrKzkDkN27u7ucHd3lzuM106Ztjto164drl27hg8//BDJyclITk5Gr169cOnSJfz666/lHSNVMbraumjn0Ba6whLXEtLlDoeIiIiIiIiIiEhWZVpJCwB2dnaFHhB27tw5rF69Gr/88st/DoyqtoKHh12P58PDiIiIiIiIiIioeivTSlqi/8qxli5yte/gTsZZJGfmyh0OERERERERERGRbFikJVnkqNOQbbwPaXpHcCU2We5wiIiIiIiIiIiIZMMiLcnC2tAadoYO0Fe54HJ8ktzhEBERERERERERyaZUe9L26tXrhceTk5P/SyxUjSgUCgxqMBpLw27iTkKe3OEQERERERERERHJplQrac3MzF74cnJywqBBgyoqVqpi6tv8/4eHJaRBrRYyR0NERERERERFad++PQIDA+UOg4gqwLRp0zB48GC5wyjE2dkZixYtkjuMV6pURdrg4OASvYhKwsncELraCqTlZOJhSpbc4RAREREREVE1ERYWhh49esDW1hZGRkZwd3fHxo0bC/XbunUr3NzcYGBggKZNm2L37t3Ssby8PEyYMAFNmzaFkZER7OzsMGjQIDx8+LDQOCEhIfDw8IBSqUTNmjXRs2dPjeMxMTHw8fGBoaEhrKysMG7cOOTn5xcZ+9GjR6GjowN3d3eN9n///Rfdu3eHnZ0dFAoFdu7cWejc+Ph4DB48GHZ2djA0NESXLl1w/fr1l98wAE+ePMHo0aPRoEEDKJVKODo64osvvkBKSkq5z0WlUuGbb75BnTp1oFQq4eLigpkzZ0KIpwu8SnLvw8LCoFAoinydOnWqRHPet28f3n77bZiYmMDS0hK9e/fGnTt3pOOxsbHo378/6tevDy0trWL/MSM5ORn+/v6wtbWFvr4+6tevr/FZSktLQ2BgIJycnKBUKtG6detCMRY3l++//77c5vu6+v3336FQKDR+XZXm12dl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/fTTtbYfp9OpV155xb+fDz/8UE888YR27NihN954o9b2AwAAAAA/hyYtAOCs2rFjh0aMGKFWrVppyZIlio2N9a8bP368LrroIo0YMULr169Xq1atzlpeRUVFCgsLO2v7O5ELL7xQK1eu1Jw5czR+/Hj/8n379unrr7/WNddco/fee++M52GapkpLSxUaGiqn03nG93e8c889V7/5zW/89++55x716dNHs2fPrtUmbVBQULX9XHDBBXrzzTf13HPPKT4+vtb2BQAAAAAnwnQHAICz6umnn1ZxcbFefvnlKg1aSWrSpIlmzpypoqIiTZ06VZL07rvvyjAMffXVV9W2NXPmTBmGoQ0bNviXbdmyRddff70aNWqkkJAQ9erVSx999FGVxx2dd/arr77SPffco7i4OCUlJZ0w5w8//FBpaWlKTEyU0+lU69at9cQTT1T76H3//v3VpUsXrV69WhdccIFCQ0OVkpKiGTNmnPTzExISomuvvVazZ8+usvzNN99UTEyMBg8eXOPjfum4Z82apRtuuEGSNGDAAP9H/BcvXizJN9XCFVdcoQULFqhXr14KDQ3VzJkz/euOn5M2Ly9PDzzwgFq2bCmn06mkpCSNHDlSOTk5/ph//OMf6ty5s1wul2JiYtSrV69qx3WyDMNQfHy8goJ++v/lUaNGqUmTJqqoqKgWP2jQILVv3/609tO3b1+ZpqmdO3dWWf7oo49Wiz/+uTn62vr22281YcIExcbGKiwsTNdcc42ys7NPOR8AAAAADQNNWgDAWfXxxx+rZcuWuuiii2pcf/HFF6tly5aaN2+eJCktLU3h4eF6++23q8XOmTNHnTt3VpcuXST55rk9//zztXnzZv3xj3/Us88+q7CwMA0bNkwffPBBtcffc8892rRpkyZPnqw//vGPJ8x51qxZCg8P14QJEzRt2jT17NnzhI85fPiwLr/8cvXs2VNTp05VUlKS7r77bv373/8+qedHkm655RatWLFCO3bs8C+bPXu2rr/+egUHB1eLP5njvvjii3XfffdJkh5++GH997//1X//+1917NjRv52tW7dq+PDhuuyyyzRt2jT16NGjxvwKCwt10UUX6R//+IcGDRqkadOmacyYMdqyZYv27dsnyTd/7n333adOnTrphRde0GOPPaYePXpo+fLlJ/UcFBcXKycnRzk5Odq5c6defPFFzZ8/X6NGjfLHjBgxQocOHdKCBQuqPDYzM1NffPFFlTNkT8XROXtjYmJO6/GSdO+992rdunWaMmWK7r77bn388ccaN27caW8PAAAAQD1nAgBwluTl5ZmSzKuvvvpn46666ipTkul2u03TNM3hw4ebcXFxZmVlpT8mIyPDtNls5uOPP+5fdumll5pdu3Y1S0tL/cu8Xq95wQUXmG3btvUv+89//mNKMvv27Vtlm8euS09P9y8rLi6uluNdd91lulyuKvvq16+fKcl89tln/cvKysrMHj16mHFxcWZ5efnPHneLFi3MtLQ0s7Ky0kxISDCfeOIJ0zRNc9OmTaYk86uvvvLnt3LlylM+7nfeeceUZH755Zc17luSOX/+/BrXjRo1yn9/8uTJpiTz/fffrxbr9XpN0zTNq6++2uzcufPPHm9N0tPTTUk1ft19993+7ZumaXo8HjMpKcm86aabqmzjueeeMw3DMHfu3Pmz+xo1apQZFhZmZmdnm9nZ2eb27dvNZ555xjQMw+zSpUuVfUkyp0yZUm0bxz83R+szcODAKo9/4IEHTLvdbubl5Z3iMwIAAACgIeBMWgDAWVNQUCBJioiI+Nm4o+vdbrck6aabblJWVpb/o/mSbxoEr9erm266SZKUm5urL774QjfeeKMKCgr8Z2EeOnRIgwcP1rZt27R///4q+7njjjtkt9t/Me/Q0NAqx5CTk6OLLrpIxcXF2rJlS5XYoKAg3XXXXf77DodDd911l7KysrR69epf3Jck2e123XjjjXrzzTcl+S4YlpycXOPZx6dz3CeSkpJywukUjvXee++pe/fuNV7czTAMSVJ0dLT27dunlStXntS+j3fnnXdq4cKFWrhwod577z2NHTtWM2fO1IQJE/wxNptNt956qz766CP/a0vyPV8XXHCBUlJSfnE/RUVFio2NVWxsrNq0aaM//OEPuvDCC/Xhhx/6j+V08z/28RdddJE8Ho9279592tsEAAAAUH/RpAUAnDVHm6/HNtRqcnwzd8iQIYqKitKcOXP8MXPmzFGPHj3Url07SdL27dtlmqb+3//7f/6m29GvKVOmSJKysrKq7OdkmniSbzqBa665RlFRUYqMjFRsbKz/o/T5+flVYhMTE6tdgOxojkc/Rn8ybrnlFm3atEnr1q3T7NmzdfPNN9fYNDyd4z6Rk30+duzY4Z9i4kQeeughhYeHq3fv3mrbtq3Gjh2rb7/99qS2L0lt27bVwIEDNXDgQF177bWaPn267rnnHr3wwgv64Ycf/HEjR45USUmJf1qHrVu3avXq1RoxYsRJ7SckJMTfDP7Pf/6jjh07Kisrq0pj/nQ0b968yv2jUyccPnz4V20XAAAAQP0U9MshAADUjqioKDVt2lTr16//2bj169erWbNmioyMlCQ5nU7//KovvfSSDh48qG+//VZ/+ctf/I/xer2SpD/84Q8nPBu0TZs2Ve6fTCMuLy9P/fr1U2RkpB5//HG1bt1aISEhWrNmjR566CH/fmtbnz591Lp1a91///1KT0/XLbfcUmPc6Rz3ifzaxuSxOnbsqK1bt+qTTz7R/Pnz9d577+mll17S5MmT9dhjj53WNi+99FJNnz5dS5YsUdeuXSVJnTp1Us+ePfX6669r5MiRev311+VwOHTjjTee1DbtdrsGDhzovz948GB16NBBd911V7ULztXk+IvHHbvdmpimeVJ5AQAAAGhYaNICAM6qK664Qv/617/0zTffqG/fvtXWf/3119q1a1eVKQMk35QHr732mhYtWqTNmzfLNE3/VAeS1KpVK0lScHBwlabbr7V48WIdOnRI77//vi6++GL/8vT09BrjDxw4oKKioipn0/7444+SpJYtW57SvocPH64///nP6tix4wkv4nUqx/1rPr5/rNatW2vDhg2/GBcWFqabbrpJN910k8rLy3XttdfqySef1KRJkxQSEnLK+62srJTku3DZsUaOHKkJEyYoIyNDs2fPVlpa2mlf9Ktp06Z64IEH9Nhjj+m7777T+eefL8l3JmxeXl6V2PLycmVkZJzWfgAAAADgWEx3AAA4qyZOnKjQ0FDdddddOnToUJV1ubm5GjNmjFwulyZOnFhl3cCBA9WoUSPNmTNHc+bMUe/evat8PD8uLk79+/fXzJkza2ycZWdnn1a+R8+IPPYMyPLycr300ks1xldWVmrmzJlVYmfOnKnY2Fj17NnzlPZ9++23a8qUKXr22WdPGHMqx320cXx8s/FUXXfddVq3bp1/ioFjHX2ejq+tw+FQp06dZJqmKioqTmu/H3/8sSSpe/fuVZYPHz5chmFo/Pjx2rlzp38qitN17733yuVy6a9//at/WevWrbVkyZIqcS+//PIJz6QFAAAAgFPBmbQAgLOqbdu2eu2113Trrbeqa9euGj16tFJSUrRr1y69+uqrysnJ0ZtvvqnWrVtXeVxwcLCuvfZavfXWWyoqKtIzzzxTbdsvvvii+vbtq65du+qOO+5Qq1atdPDgQS1btkz79u3TunXrTjnfCy64QDExMRo1apTuu+8+GYah//73vyf82HpiYqL+9re/adeuXWrXrp3mzJmjtWvX6uWXX1ZwcPAp7btFixZ69NFHfzHuZI+7R48estvt+tvf/qb8/Hw5nU5dcskliouLO6W8Jk6cqHfffVc33HCDfve736lnz57Kzc3VRx99pBkzZqh79+4aNGiQEhISdOGFFyo+Pl6bN2/W9OnTlZaW9osXjpOkNWvW6PXXX5fkm6N40aJFeu+993TBBRdo0KBBVWJjY2M1ZMgQvfPOO4qOjlZaWtopHc/xGjdurNtuu00vvfSSNm/erI4dO+r222/XmDFjdN111+myyy7TunXrtGDBAjVp0uRX7QsAAAAAJM6kBQBY4IYbbtDq1avVv39/vfrqqxozZoz+9a9/qV+/flq9erWuvfbaGh930003+T/qXtOco506ddKqVauUlpamWbNmaezYsZoxY4ZsNpsmT558Wrk2btxYn3zyiZo2bapHHnlEzzzzjC677DJNnTq1xviYmBh9+umnWrVqlSZOnKi9e/dq+vTpuuOOO05r/yfjZI87ISFBM2bMUFZWlkaPHq3hw4dr06ZNp7y/8PBwff3117r77rv16aef6r777tNLL72k9u3bKykpSZJ01113qbCwUM8995zGjh2ruXPn6r777vM3Xn/Jm2++qREjRmjEiBG677779P3332vixIlasGCBbLbqb19Gjhwpyfe6cDqdp3xMx5swYYJsNpv+9re/SZLuuOMOPfTQQ1qyZIl+//vfKz09XQsXLqx2kTgAAAAAOB2GyRUsAACoFf3791dOTs5JzdeK2vXhhx9q2LBhWrJkiS666CKr0wEAAACAU8KZtAAAoM7717/+pVatWtV4MToAAAAACHTMSQsAAOqst956S+vXr9e8efM0bdo0GYZhdUoAAAAAcMpo0gIAgDpr+PDhCg8P1+jRo3XPPfdYnQ4AAAAAnBbmpAUAAAAAAAAACzEnLQAAAAAAAABYiCYtAAAAAAAAAFiIJi0AAAAAAAAAWIgLh9USr9erAwcOKCIigitLAwAAAMBpMk1TBQUFSkxM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oqKwePFirFixAqdOncLgwYORkZGBvn37PvoTUxL53irs37jIm4cREREREREVc3369JEnMRER5WXnzp0oX7680mnk8rhevwpcpPXx8YGvr2+BHgX1xRdfIDU1Fa1atUJISIj8WLNmjRwze/ZsdOzYES+//DJatGiB4OBgrF+/Xt6uVquxceNGqNVqhIeH480330SvXr0wceJEOSYsLAybNm3C1q1bUbduXcycORNLlixBRESEHPP6669jxowZGDduHOrVq4cjR45g8+bNuW4mRoXkWRpQaQBLJpAef+94IiIiIiIikrVq1QrDhg17ZK+j/F26dAn9+/dHWFgYDAYDKlasiPHjx8s3WM927NgxNG/eHHq9HmXKlMFnn33mtH3x4sVo3rw5fHx84OPjgzZt2uRazhEATp06hRdffBFeXl5wc3NDo0aNcPnyZXm70WhEZGQk/Pz84O7ujpdffjnXco7ZkpKSULp0aUiShJSUFLk9NjYW3bt3R5UqVaBSqfJ8z1gsFkycOBEVK1aEXq9H3bp1sXnz5gKftylTpqBRo0bw8PBAYGAgunTpgjNnzjjFFEVfAGDVqlWoW7cuXF1dERISgn79+iEpKUneXpBzL0lSno/p06cXqL9nz55F586d4e/vD09PTzzzzDPYsWOHU8y7776Lhg0bQqfToV69ennuRwiBGTNmoEqVKtDpdChVqhQmTZrkFDN//nxUr14dBoMBVatWxcqVK522t2rVKs++dOjQocj6+7g6d+4cPDw8nJZZBQr+81mUCrzcwZw5c4r84KIAMyr1ej3mz5+P+fPn5xtTrly5XMsZ3KlVq1Y4fPjwXWOGDBmS7/IG9IDUGsC7HHDjPHDjAuCR91q/REREREREVDKZzWZotdrH/linT5+G3W7Hl19+iUqVKuHEiRMYMGAAMjIyMGPGDACO+9a0bdsWbdq0wcKFC3H8+HH069cP3t7eGDhwIADHLMRu3bqhadOm0Ov1mDZtGtq2bYuTJ0+iVKlSAIDz58/jmWeeQf/+/TFhwgR4enri5MmTTms3Dx8+HJs2bcK6devg5eWFIUOGoGvXrti7d2+u3Pv37486derg6tWrTu0mkwkBAQEYO3YsZs+enWe/x44di6+//hqLFy9GtWrVsGXLFrz00kvYt28f6tevf8/ztmvXLkRGRqJRo0awWq344IMP0LZtW8TE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l7Nnz6Jz587w9/eHp6cnnnnmGezYsUPeXpBz36dPH0iSlOtRs2bNAvXXZrPho48+QlhYGAwGAypWrIhPPvkEQgg5Zv369Wjbti38/PwgSRKOHDmS576io6Px3HPPwc3NDZ6enmjRogWysrLk7X/99Reef/55eHt7w8/PDwMHDkR6erq8/auvvsqzL5IkISEhoUj6+7gSQqB9+/aQJAnff/+93F7Qn8+HoVBF2iZNmqBixYr47rvv0LdvX/zzzz/Ytm0b+vfvDy8vr6LOkUoqv4qOrzfOAzkuVkRERERERFRy2Gw22O32EnGsXbt2ITIyEn/88Qe2bt0Ki8WCtm3bIiMjQ44ZPnw4fvrpJ6xbtw67du3CtWvX0LVrV3n7oUOHEBgYiK+//honT57Ehx9+iDFjxmDevHlOx3rttdewbds2LF26FGfOnME333yDqlWrytv37duHbt26oX///jh8+DC6dOmCLl264MSJE7ny3rBhA/744w+Ehobm2mY2m/Hqq69i8ODBefb56NGjeOGFF9CuXTscPnwYa9aswY8//ojRo0cX6Jzt27cPderUwf/+9z8cO3YMffv2Ra9evbBx48Yi70vHjh1htVqxfft2HDp0CHXr1kXHjh3lCYUFOfdz585FbGys/Pj333/h6+uLV199tUD9nTZtGr744gvMmzcPp06dwrRp0/DZZ5/h888/l2MyMjLwzDPPYNq0afnuJzo6Gu3atUPbtm1x4MAB/PnnnxgyZAhUKkcp79q1a2jTpg0qVaqE/fv3Y/PmzTh58iT69Okj7+P111936ktsbCwiIiLQsmVLBAYGFkl/H1dz5syBJEm52gv68/lQiEL44IMPRExMjEhMTBSJiYmF2UWJk5qaKgCI1NRUpVPJxWazidjYWGGz2ZROxZnVIsS1I0IY05TO5KErtmPwBOEYKI9jUDxwHJTHMVAex0B5HAPlFecxeNh/W2VlZYmYmBiRlZX1UPb/sLRs2VIMGTJEDB06VHh7e4vAwECxaNEikZ6eLvr06SPc3d1FxYoVxc8//yy/xmq1in79+ony5csLvV4vqlSpIubMmSNvz8rKEjVq1BADBgyQ286dOyfc3d3F0qVL881l5syZolatWsLV1VWULl1aDB48WNy8eVPevnz5cuHl5SV++OEHUb16daFWq8XFixeF0WgU7733nggNDRWurq7i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0mKBCzu5Li0REREREREREZVYXO6Aii+7FfhlBGCzONam9QxVOiMiIiIiIiIiIqIix5m0VHypXQC/yo7v42OUzYWIiIiIiIiIiOghYZGWirfA6o6viaeUzYOIiIiIiIiIiOghYZGWirfAGo6vCae4Li0REREREREREZVILNJS8eZfGVBpgMwkICNR6WyIiIiIiIiIiIiKHIu0VLxpdIBvBcf3CVyXloiIiIiIiIiISh4Waan4y16XNoHr0hIRERERERERUcmjUToBonsKawH4VwECqiqdCRERERERERERUZFjkZaKP6/SjgcREREREREREVEJxOUOiIiIiIiIiIiIiBTEmbT0eEi7Blz6HdC6AdU6KJ0NERERERERERFRkeFMWno8pF0DTvwPOLdN6UyIiIiIiIiIiIiKFIu09HjIvmlY2lXAmKpsLkREREREREREREWIRVp6POg8AO+yju8TTiubCxERERERERERURFikZYeH4HVHV8TYpTNg4iIiIiIiIiIqAixSEuPj4DsIu0pZfMgIiIiIiIiIiIqQizS0uMjeyZtymXAlK5sLkREREREREREREWERVp6fBi8AY8QwMUA3IxVOhsiIiIiIiIiIqIioVE6AaL70nocYPABJEnpTIiIiIiIiIiIiIoEi7T0eHH1VToDIiIiIiIiIiKiIsXlDujxJITjQURERERERERE9JhjkZYeP0e+AX6IBK79pXQmRERERERERERED4xFWnr8mNKAzCQgPkbpTIiIiIiIiIiIiB4Yi7T0+Amq6fgaf0LZPIiIiIiIiIiIiIoAi7T0+Ams4fia/A9guqlsLkRERERERERERA+IRVp6/Lj6Ap6lAAgg4ZTS2RARERERERERET0QFmnp8RR0azYtlzwgIiIiIiIiIqLHHIu09HgKqu34Gn9S2TyIiIiIiIiIiIgeEIu09HgKqgF4lwWCawN2u9LZEBERERERERERFZpG6QSICkXnAbwwXeksiIiIiIiIiIiIHhhn0hIREREREREREREpiEVaerxZzUDiGaWzICIiIiIiIiIiKjQWaenxZTUD698Cto4DMpKUzoaIiIiIiIiIiKhQWKSlx5dGC3iVcXwff0LZXIiIiIiIiIiIiApJ0SLt7t270alTJ4SGhkKSJHz//fdO24UQGDduHEJCQmAwGNCmTRv8/fffTjE3btxAjx494OnpCW9vb/Tv3x/p6elOMceOHUPz5s2h1+tRpkwZfPbZZ7lyWbduHapVqwa9Xo/atWvj559/LvL+0kMQVNPxNf6ksnkQEREREREREREVkqJF2oyMDNStWxfz58/Pc/tnn32G//znP1i4cCH2798PNzc3REREwGg0yjE9evTAyZMnsXXrVmzcuBG7d+/GwIED5e1paWlo27YtypUrh0OHDmH69On4+OOPsWjRIjlm37596NatG/r374/Dhw+jS5cu6NKlC06c4OzMYi9nkVYIZXMhIiIiIiIiIiIqBI2SB2/fvj3at2+f5zYhBObMmYOxY8eic+fOAICVK1ciKCgI33//Pd544w2cOnUKmzdvxp9//omnnnoKAPD555/jhRdewIwZMxAaGopVq1bBbDZj2bJl0Gq1qFmzJo4cOYJZs2bJxdy5c+eiXbt2GDFiBADgk08+wdatWzFv3jwsXLjwEZwJKjT/qoBKA2ReB9ITAI8gpTMiIiIiIiIiIiK6L8V2TdqLFy8iLi4Obdq0kdu8vLzQuHFjREdHAwCio6Ph7e0tF2gBoE2bNlCpVNi/f78c06JFC2i1WjkmIiICZ86cQXJyshyT8zjZMdnHoWLMRQ/4VXR8z3VpiYiIiIiIiIjoMaToTNq7iYuLAwAEBTnPjAwKCpK3xcXFITAw0Gm7RqOBr6+vU0xYWFiufWRv8/HxQVxc3F2PkxeTyQSTySQ/T0tLAwDY7XbY7fYC9/NRsNvtEEIUu7yKTGANSAmnIeJOABWeVTqbPJX4MXgMcAyUxzEoHjgOyuMYKI9joDyOgfKK8xgUx5yIiIgetmJbpC3upkyZggkTJuRqT0xMdFoztziw2+1ITU2FEAIqVbGdPF1oakMlaCp0gtWvOmwJCUqnk6eSPgaPA46B8jgGxQPHQXkcA+VxDJTHMVBecR6DmzdvKp0CERHRI1dsi7TBwcEAgPj4eISEhMjt8fHxqFevnhyTcEdRzmq14saNG/Lrg4ODER8f7xST/fxeMdnb8zJmzBhERUXJz9PS0lCmTBkEBATA09Pzfrr60NntdkiShICAgGL3D7AiERgIVGqgdBZ3VeLH4DHAMVAex6B44Dgoj2OgPI6B8jgGyivOY6DX65VOgYiI6JErtkXasLAwBAcHY9u2bXJRNi0tDfv378fgwYMBAOHh4UhJScGhQ4fQsGFDAMD27dtht9vRuHFjOebDDz+ExWKBi4sLAGDr1q2oWrUqfHx85Jht27Zh2LBh8vG3bt2K8PDwfPPT6XTQ6XS52lUqVbH7Rw4ASJJUbHN7UnAMlMcxUB7HoHjgOCiPY6A8joHyOAbKK65jUNzyISIiehQU/e2Xnp6OI0eO4MiRIwAcNws7cuQILl++DEmSMGzYMHz66af48ccfcfz4cfTq1QuhoaHo0qULAKB69epo164dBgwYgAMHDmDv3r0YMmQI3njjDYSGhgIAunfvDq1Wi/79++PkyZNYs2YN5s6d6zQLdujQodi8eTNmzpyJ06dP4+OPP8bBgwcxZMiQR31KqLBM6cDF3cDpTUpnQkREREREREREdF8UnUl78OBBPPvs7Rs9ZRdOe/fuja+++gojR45ERkYGBg4ciJSUFDzzzDPYvHmz08dfVq1ahSFDhqB169ZQqVR4+eWX8Z///Efe7uXlhV9//RWRkZFo2LAh/P39MW7cOAwcOFCOadq0KVavXo2xY8figw8+QOXKlfH999+jVq1aj+AsUJFIjwei5wMuBqByBKAutpPEiYiIiIiIiIiInEhCCKF0EiVBWloavLy8kJqaWizXpE1ISEBgYGDJ/eiQ3Q6sHwCY04HnJwIBVZXOyMkTMQbFHMdAeRyD4oHjoDyOgfI4BsrjGCivOI9Bcf7bioiI6GEpXr+NiQpLpQKCazu+jz2qbC5ERERERERERET3gUVaKjlC6ji+skhLRERERERERESPERZpqeQIruv4mnQeMN1UNhciIiIiIiIiIqICYpGWSg43P8C7LAABXD2kdDZEREREREREREQFwiItlSxlGju+pl5RNg8iIiIiIiIiIqIC0iidAFGRqvw8UPE5wNVX6UyIiIiIiIiIiIgKhEVaKln0XkpnQEREREREREREdF+43AGVXFaz0hkQERERERERERHdE4u0VPKY0oHtnwIb/o+FWiIiIiIiIiIiKvZYpKWSR+sGpMUClkwg9qjS2RAREREREREREd0Vi7RU8kgSUOZpx/f//qFsLkRERERERERERPfAIi2VTGWbOL5eOcglD4iIiIiIiIiIqFhjkZZKJv8qgMEXsBqBuONKZ0NERERERERERJQvFmmpZJIkoGxjx/eXo5XNhYiIiIiIiIiI6C5YpKWSq2y44+vVg4DNomwuRERERERERERE+dAonQDR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VxqlEyBSgpuLm9Pzny/+jNM3TsNL54WeNXo++AGqvgCkXQNC6jlm19rtD75PIiIiIiIiIiIqkVikJQLwWtXXsPniZrQPay+3mWwm2Ow2uLq43v8OJQl4ekARZkhERERERERERCUVlzsgAuBv8MebNd6En8FPbvv5ws/45I9PcDTx6IMfIDMJ+nM/80ZiRERERERERESUC2fSEuXBarciJikGN803oVE94I+JxQjp17HQp8YDfkFA9Q5FkyQREREREREREZUInElLlAeNSoNRT49C/9r9UdOvptx+Nf0qMi2Z97czFz1EtY4AAOnwf4H4mKJMlYiIiIiIiIiIHnMs0hLlQ6PSoH5gffm5yWbComOLMGn/JPx789/721nVF2AOaQQIO/D7bCAjqYizJSIiIiIiIiKixxWLtEQFlGJMgUpSQSWpEGAIuL8XSxIya/cEfMoDpjRgz0zAan4oeRIRERERERER0eOFRVqiAgpyC8IHT3+AyHqR0Gv0cvuZG2cgCnJDMLUWovl7gNYduHEe+HMJbyRGREREREREREQs0hLdDxe1C4LdguXnMUkx+Pzw5/j88Oew2W333oFbAPDMMAASkPIPYMl6aLkSEREREREREdHj4QFvW0/0ZEszp0Gr1iLUPRRqlbpgLwquDbQcCQTVBDS6h5sgEREREREREREVeyzSEj2AJiFNUNm7Mty17nJbhiUDmZZMBLjeZd3aUg1ufy8EkHwR8K3wEDMlIiIiIiIiIqLiissdED0gP4MfdOrbM2LXnVmHyfsn48+4Pwu2g9Mbgc0fACe/5xq1RERERERERERPIBZpiYqQxWZBmjkNVrsV/gb/e79ACCDjOgABHP0G+OMLwGZ96HkSEREREREREVHxweUOiIqQi9oF79R/B5fSLiHMK0xuT8xMhMhrlqwkAU/1BTxDgUNfARd3AZnXgebvAVq3R5c4EREREREREREphjNpiYqYJElOBdo0cxpmHpqJyccmwy7scvu/N//FhZQLyLRkAlUigJajHDcSiz8JbB0PZCQpkT4RERERERERET1iLNISPWSX0y7DarfCoDZAJd3+kfv10q+YdWgW/oj9w9EQWg+W5z7CXhcgLuUCxK9jAatJoayJiIiIiIiIiOhR4XIHRA9ZLf9amPLMFFy4dsGp3dXFFT56HwS6BsptlzUqfOPlBY+kS5hc4/8c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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "fig, axes = plt.subplots(2, 1, figsize=(14, 10), sharex=True)\n", "\n", diff --git a/lab/profiling.ipynb b/lab/profiling.ipynb index bd12232..7f37000 100644 --- a/lab/profiling.ipynb +++ b/lab/profiling.ipynb @@ -2,18 +2,10 @@ "cells": [ { "cell_type": "code", - "execution_count": null, + "execution_count": 5, "id": "16fc7e3c-465e-4189-86d0-54a1f6c5e169", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Latest profile: /Users/vrajpandya/repo/intern_challenge/profile/profile_20260418_091607.prof\n" - ] - } - ], + "outputs": [], "source": [ "from pathlib import Path\n", "import pstats\n", @@ -23,7 +15,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 6, "id": "efbaba45", "metadata": {}, "outputs": [ @@ -48,7 +40,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 7, "id": "635d44c1", "metadata": { "scrolled": true @@ -4372,10 +4364,10 @@ { "data": { "text/plain": [ - "" + "" ] }, - "execution_count": 9, + "execution_count": 7, "metadata": {}, "output_type": "execute_result" } diff --git a/loss_tracking_utils.py b/loss_tracking_utils.py index 313c4b7..a0dac85 100644 --- a/loss_tracking_utils.py +++ b/loss_tracking_utils.py @@ -1,21 +1,118 @@ -import csv import os +import sqlite3 from datetime import datetime -def save_loss_history_csv(loss_history, output_dir, run_metadata=None): - """Save loss history values to a CSV file.""" - loss_history_dir = os.path.join(output_dir, "loss_history") - os.makedirs(loss_history_dir, exist_ok=True) +DB_DIRNAME = "loss_tracking" +DB_FILENAME_PREFIX = "loss_tracking" + + +def get_loss_tracking_db_dir(output_dir): + """Return the directory that stores loss-tracking SQLite files.""" + return os.path.join(output_dir, DB_DIRNAME) + + +def create_loss_tracking_db(output_dir): + """Create a new SQLite database for a single placement/test invocation.""" + db_dir = get_loss_tracking_db_dir(output_dir) + os.makedirs(db_dir, exist_ok=True) timestamp = datetime.now().strftime("%Y%m%d_%H%M%S_%f") - output_path = os.path.join( - loss_history_dir, f"loss_history_{timestamp}.csv" + db_path = os.path.join(db_dir, f"{DB_FILENAME_PREFIX}_{timestamp}.sqlite3") + + connection = _connect_db(db_path) + try: + _initialize_schema(connection) + connection.commit() + finally: + connection.close() + + return db_path + + +def _connect_db(db_path): + connection = sqlite3.connect(db_path) + connection.execute("PRAGMA foreign_keys = ON") + return connection + + +def _initialize_schema(connection): + connection.executescript( + """ + CREATE TABLE IF NOT EXISTS test_cases ( + test_id INTEGER PRIMARY KEY, + num_macros INTEGER, + num_std_cells INTEGER, + seed INTEGER, + updated_at TEXT NOT NULL + ); + + CREATE TABLE IF NOT EXISTS runs ( + run_id TEXT PRIMARY KEY, + test_id INTEGER REFERENCES test_cases(test_id) ON DELETE SET NULL, + runner TEXT, + run_label TEXT, + run_started_at TEXT, + saved_at TEXT NOT NULL, + seed INTEGER, + num_macros INTEGER, + num_std_cells INTEGER, + num_epochs INTEGER, + lr REAL, + lambda_wirelength REAL, + lambda_overlap REAL, + log_interval INTEGER, + verbose INTEGER, + total_cells INTEGER, + total_pins INTEGER, + total_edges INTEGER + ); + + CREATE TABLE IF NOT EXISTS loss_history ( + run_id TEXT NOT NULL REFERENCES runs(run_id) ON DELETE CASCADE, + epoch INTEGER NOT NULL, + total_loss REAL, + wirelength_loss REAL, + overlap_loss REAL, + overlap_count INTEGER, + total_overlap_area REAL, + max_overlap_area REAL, + PRIMARY KEY (run_id, epoch) + ); + """ ) + _ensure_columns( + connection, + "runs", + { + "seed": "INTEGER", + "num_macros": "INTEGER", + "num_std_cells": "INTEGER", + }, + ) + + +def _ensure_columns(connection, table_name, columns): + existing_columns = { + row[1] + for row in connection.execute(f"PRAGMA table_info({table_name})") + } + for column_name, column_type in columns.items(): + if column_name not in existing_columns: + connection.execute( + f"ALTER TABLE {table_name} ADD COLUMN {column_name} {column_type}" + ) + + +def save_loss_history_sqlite(loss_history, db_path, run_metadata=None): + """Save loss history values to a normalized SQLite database.""" + os.makedirs(os.path.dirname(db_path), exist_ok=True) + metadata = dict(loss_history.get("run_metadata", {})) if run_metadata: metadata.update(run_metadata) + timestamp = datetime.now().strftime("%Y%m%d_%H%M%S_%f") metadata.setdefault("run_id", timestamp) metadata.setdefault("saved_at", datetime.now().isoformat(timespec="seconds")) @@ -35,32 +132,129 @@ def save_loss_history_csv(loss_history, output_dir, run_metadata=None): len(max_overlap_area), ) - with open(output_path, "w", newline="", encoding="utf-8") as csv_file: - writer = csv.writer(csv_file) - metadata_fields = list(metadata.keys()) - metric_fields = [ - "epoch", - "total_loss", - "wirelength_loss", - "overlap_loss", - "overlap_count", - "total_overlap_area", - "max_overlap_area", - ] - writer.writerow(metadata_fields + metric_fields) + connection = _connect_db(db_path) + try: + _initialize_schema(connection) + + test_id = metadata.get("test_id") + if test_id is not None: + connection.execute( + """ + INSERT INTO test_cases ( + test_id, + num_macros, + num_std_cells, + seed, + updated_at + ) + VALUES (?, ?, ?, ?, ?) + ON CONFLICT(test_id) DO UPDATE SET + num_macros = excluded.num_macros, + num_std_cells = excluded.num_std_cells, + seed = excluded.seed, + updated_at = excluded.updated_at + """, + ( + int(test_id), + metadata.get("num_macros"), + metadata.get("num_std_cells"), + metadata.get("seed"), + metadata["saved_at"], + ), + ) + + connection.execute( + """ + INSERT OR REPLACE INTO runs ( + run_id, + test_id, + runner, + run_label, + run_started_at, + saved_at, + seed, + num_macros, + num_std_cells, + num_epochs, + lr, + lambda_wirelength, + lambda_overlap, + log_interval, + verbose, + total_cells, + total_pins, + total_edges + ) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + """, + ( + metadata["run_id"], + int(test_id) if test_id is not None else None, + metadata.get("runner"), + metadata.get("run_label"), + metadata.get("run_started_at"), + metadata["saved_at"], + metadata.get("seed"), + metadata.get("num_macros"), + metadata.get("num_std_cells"), + metadata.get("num_epochs"), + metadata.get("lr"), + metadata.get("lambda_wirelength"), + metadata.get("lambda_overlap"), + metadata.get("log_interval"), + int(bool(metadata.get("verbose"))) + if metadata.get("verbose") is not None + else None, + metadata.get("total_cells"), + metadata.get("total_pins"), + metadata.get("total_edges"), + ), + ) + connection.execute( + "DELETE FROM loss_history WHERE run_id = ?", + (metadata["run_id"],), + ) + + history_rows = [] for epoch in range(row_count): - metric_row = [ + history_rows.append( + ( + metadata["run_id"], + epoch, + total_loss[epoch] if epoch < len(total_loss) else None, + wirelength_loss[epoch] + if epoch < len(wirelength_loss) + else None, + overlap_loss[epoch] if epoch < len(overlap_loss) else None, + overlap_count[epoch] if epoch < len(overlap_count) else None, + total_overlap_area[epoch] + if epoch < len(total_overlap_area) + else None, + max_overlap_area[epoch] + if epoch < len(max_overlap_area) + else None, + ) + ) + + connection.executemany( + """ + INSERT INTO loss_history ( + run_id, epoch, - total_loss[epoch] if epoch < len(total_loss) else "", - wirelength_loss[epoch] if epoch < len(wirelength_loss) else "", - overlap_loss[epoch] if epoch < len(overlap_loss) else "", - overlap_count[epoch] if epoch < len(overlap_count) else "", - total_overlap_area[epoch] - if epoch < len(total_overlap_area) - else "", - max_overlap_area[epoch] if epoch < len(max_overlap_area) else "", - ] - writer.writerow([metadata[field] for field in metadata_fields] + metric_row) - - return output_path + total_loss, + wirelength_loss, + overlap_loss, + overlap_count, + total_overlap_area, + max_overlap_area + ) + VALUES (?, ?, ?, ?, ?, ?, ?, ?) + """, + history_rows, + ) + connection.commit() + finally: + connection.close() + + return db_path diff --git a/placement.py b/placement.py index bf26f33..1017d7a 100644 --- a/placement.py +++ b/placement.py @@ -46,7 +46,7 @@ import torch.optim as optim from arg_parse_util import parse_args -from loss_tracking_utils import save_loss_history_csv +from loss_tracking_utils import create_loss_tracking_db, save_loss_history_sqlite from profiler_helper import run_with_optional_profile torch.manual_seed(66) @@ -424,7 +424,7 @@ def train_placement( cell_features, pin_features, edge_list, - num_epochs=10000, + num_epochs=2000, lr=0.1, lambda_wirelength=3.0, lambda_overlap=1.0, @@ -850,6 +850,8 @@ def main(): print("RUNNING OPTIMIZATION") print("=" * 70) + loss_tracking_db_path = create_loss_tracking_db(OUTPUT_DIR) + result = train_placement( cell_features, pin_features, @@ -863,7 +865,10 @@ def main(): "num_std_cells": num_std_cells, }, ) - loss_history_path = save_loss_history_csv(result["loss_history"], OUTPUT_DIR) + loss_history_path = save_loss_history_sqlite( + result["loss_history"], + loss_tracking_db_path, + ) print(f"Loss history saved to: {loss_history_path}") # Calculate final metrics (both detailed and normalized) diff --git a/test.py b/test.py index 580e72d..4ef0413 100644 --- a/test.py +++ b/test.py @@ -29,7 +29,7 @@ generate_placement_input, train_placement, ) -from loss_tracking_utils import save_loss_history_csv +from loss_tracking_utils import create_loss_tracking_db, save_loss_history_sqlite # Test case configurations: (test_id, num_macros, num_std_cells, seed) @@ -57,6 +57,7 @@ def run_placement_test( test_id, num_macros, num_std_cells, + loss_tracking_db_path, seed=None, ): """Run placement optimization on a single test case. @@ -108,7 +109,10 @@ def run_placement_test( }, ) elapsed_time = time.time() - start_time - loss_history_path = save_loss_history_csv(result["loss_history"], OUTPUT_DIR) + loss_history_path = save_loss_history_sqlite( + result["loss_history"], + loss_tracking_db_path, + ) # Calculate final metrics using shared implementation final_cell_features = result["final_cell_features"] @@ -146,6 +150,9 @@ def run_all_tests(): print() all_results = [] + loss_tracking_db_path = create_loss_tracking_db(OUTPUT_DIR) + print(f"Writing loss history to: {loss_tracking_db_path}") + print() for idx, (test_id, num_macros, num_std_cells, seed) in enumerate(TEST_CASES, 1): size_category = ( @@ -162,6 +169,7 @@ def run_all_tests(): test_id, num_macros, num_std_cells, + loss_tracking_db_path, seed, ) From 928783959a0f85a628cbadefdb221825b7a19a0c Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 19 Apr 2026 21:23:34 -0700 Subject: [PATCH 07/48] init code for using mps/cuda --- placement.py | 131 +++++++++++++++++++++++++++++++++++---------------- test.py | 23 +++++---- 2 files changed, 105 insertions(+), 49 deletions(-) diff --git a/placement.py b/placement.py index 1017d7a..69ce876 100644 --- a/placement.py +++ b/placement.py @@ -49,7 +49,24 @@ from loss_tracking_utils import create_loss_tracking_db, save_loss_history_sqlite from profiler_helper import run_with_optional_profile -torch.manual_seed(66) + +def get_best_device(): + """Select the fastest available torch device.""" + if torch.cuda.is_available(): + return torch.device("cuda") + if torch.backends.mps.is_available(): + return torch.device("mps") + return torch.device("cpu") + + +def seed_torch(seed): + """Seed torch RNGs across supported backends.""" + torch.manual_seed(seed) + if torch.cuda.is_available(): + torch.cuda.manual_seed_all(seed) + + +seed_torch(66) # Feature index enums for cleaner code access class CellFeatureIdx(IntEnum): @@ -91,7 +108,7 @@ class PinFeatureIdx(IntEnum): # ======= SETUP ======= -def generate_placement_input(num_macros, num_std_cells): +def generate_placement_input(num_macros, num_std_cells, device=None): """Generate synthetic placement input data. Args: @@ -105,16 +122,18 @@ def generate_placement_input(num_macros, num_std_cells): [cell_instance_index, pin_x, pin_y, x, y, pin_width, pin_height] - edge_list: torch.Tensor of shape [E, 2] with [src_pin_idx, tgt_pin_idx] """ + device = device or get_best_device() total_cells = num_macros + num_std_cells # Step 1: Generate macro areas (uniformly distributed between min and max) macro_areas = ( - torch.rand(num_macros) * (MAX_MACRO_AREA - MIN_MACRO_AREA) + MIN_MACRO_AREA + torch.rand(num_macros, device=device) * (MAX_MACRO_AREA - MIN_MACRO_AREA) + + MIN_MACRO_AREA ) # Step 2: Generate standard cell areas (randomly pick from 1, 2, or 3) - std_cell_areas = torch.tensor(STANDARD_CELL_AREAS)[ - torch.randint(0, len(STANDARD_CELL_AREAS), (num_std_cells,)) + std_cell_areas = torch.tensor(STANDARD_CELL_AREAS, device=device)[ + torch.randint(0, len(STANDARD_CELL_AREAS), (num_std_cells,), device=device) ] # Combine all areas @@ -127,27 +146,39 @@ def generate_placement_input(num_macros, num_std_cells): # Standard cells have fixed height = 1, width = area std_cell_widths = std_cell_areas / STANDARD_CELL_HEIGHT - std_cell_heights = torch.full((num_std_cells,), STANDARD_CELL_HEIGHT) + std_cell_heights = torch.full( + (num_std_cells,), + STANDARD_CELL_HEIGHT, + device=device, + ) # Combine dimensions cell_widths = torch.cat([macro_widths, std_cell_widths]) cell_heights = torch.cat([macro_heights, std_cell_heights]) # Step 4: Calculate number of pins per cell - num_pins_per_cell = torch.zeros(total_cells, dtype=torch.int) + num_pins_per_cell = torch.zeros(total_cells, dtype=torch.int, device=device) # Macros: between sqrt(area) and 2*sqrt(area) pins for i in range(num_macros): sqrt_area = int(torch.sqrt(macro_areas[i]).item()) - num_pins_per_cell[i] = torch.randint(sqrt_area, 2 * sqrt_area + 1, (1,)).item() + num_pins_per_cell[i] = torch.randint( + sqrt_area, + 2 * sqrt_area + 1, + (1,), + device=device, + ).item() # Standard cells: between 3 and 6 pins num_pins_per_cell[num_macros:] = torch.randint( - MIN_STANDARD_CELL_PINS, MAX_STANDARD_CELL_PINS + 1, (num_std_cells,) + MIN_STANDARD_CELL_PINS, + MAX_STANDARD_CELL_PINS + 1, + (num_std_cells,), + device=device, ) # Step 5: Create cell features tensor [area, num_pins, x, y, width, height] - cell_features = torch.zeros(total_cells, 6) + cell_features = torch.zeros(total_cells, 6, device=device) cell_features[:, CellFeatureIdx.AREA] = areas cell_features[:, CellFeatureIdx.NUM_PINS] = num_pins_per_cell.float() cell_features[:, CellFeatureIdx.X] = 0.0 # x position (initialized to 0) @@ -157,7 +188,7 @@ def generate_placement_input(num_macros, num_std_cells): # Step 6: Generate pins for each cell total_pins = num_pins_per_cell.sum().item() - pin_features = torch.zeros(total_pins, 7) + pin_features = torch.zeros(total_pins, 7, device=device) # Fixed pin size for all pins (square pins) PIN_SIZE = 0.1 # All pins are 0.1 x 0.1 @@ -172,12 +203,18 @@ def generate_placement_input(num_macros, num_std_cells): # Offset from edges to ensure pins are fully inside margin = PIN_SIZE / 2 if cell_width > 2 * margin and cell_height > 2 * margin: - pin_x = torch.rand(n_pins) * (cell_width - 2 * margin) + margin - pin_y = torch.rand(n_pins) * (cell_height - 2 * margin) + margin + pin_x = ( + torch.rand(n_pins, device=device) * (cell_width - 2 * margin) + + margin + ) + pin_y = ( + torch.rand(n_pins, device=device) * (cell_height - 2 * margin) + + margin + ) else: # For very small cells, just center the pins - pin_x = torch.full((n_pins,), cell_width / 2) - pin_y = torch.full((n_pins,), cell_height / 2) + pin_x = torch.full((n_pins,), cell_width / 2, device=device) + pin_y = torch.full((n_pins,), cell_height / 2, device=device) # Fill pin features pin_features[pin_idx : pin_idx + n_pins, PinFeatureIdx.CELL_IDX] = cell_idx @@ -203,7 +240,7 @@ def generate_placement_input(num_macros, num_std_cells): edge_list = [] avg_edges_per_pin = 2.0 - pin_to_cell = torch.zeros(total_pins, dtype=torch.long) + pin_to_cell = torch.zeros(total_pins, dtype=torch.long, device=device) pin_idx = 0 for cell_idx, n_pins in enumerate(num_pins_per_cell): pin_to_cell[pin_idx : pin_idx + n_pins] = cell_idx @@ -214,12 +251,17 @@ def generate_placement_input(num_macros, num_std_cells): for pin_idx in range(total_pins): pin_cell = pin_to_cell[pin_idx].item() - num_connections = torch.randint(1, 4, (1,)).item() # 1-3 connections per pin + num_connections = torch.randint( + 1, + 4, + (1,), + device=device, + ).item() # 1-3 connections per pin # Try to connect to pins from different cells for _ in range(num_connections): # Random candidate - other_pin = torch.randint(0, total_pins, (1,)).item() + other_pin = torch.randint(0, total_pins, (1,), device=device).item() # Skip self-connections and existing connections if other_pin == pin_idx or other_pin in adjacency[pin_idx]: @@ -237,10 +279,10 @@ def generate_placement_input(num_macros, num_std_cells): # Convert to tensor and remove duplicates if edge_list: - edge_list = torch.tensor(edge_list, dtype=torch.long) + edge_list = torch.tensor(edge_list, dtype=torch.long, device=device) edge_list = torch.unique(edge_list, dim=0) else: - edge_list = torch.zeros((0, 2), dtype=torch.long) + edge_list = torch.zeros((0, 2), dtype=torch.long, device=device) print(f"\nGenerated placement data:") print(f" Total cells: {total_cells}") @@ -280,7 +322,7 @@ def wirelength_attraction_loss(cell_features, pin_features, edge_list): Scalar loss value """ if edge_list.shape[0] == 0: - return torch.tensor(0.0, requires_grad=True) + return torch.tensor(0.0, requires_grad=True, device=cell_features.device) # Update absolute pin positions based on cell positions cell_positions = cell_features[:, 2:4] # [N, 2] @@ -365,7 +407,7 @@ def overlap_repulsion_loss(cell_features, pin_features, edge_list): N = cell_features.shape[0] if N <= 1: - return torch.tensor(0.0, requires_grad=True) + return torch.tensor(0.0, requires_grad=True, device=cell_features.device) x_col = cell_features[:, CellFeatureIdx.X] y_col = cell_features[:, CellFeatureIdx.Y] @@ -416,10 +458,6 @@ def overlap_repulsion_loss(cell_features, pin_features, edge_list): # # Delete this placeholder and add your implementation: - # Placeholder - returns a constant loss (REPLACE THIS!) - return torch.tensor(1.0, requires_grad=True) - - def train_placement( cell_features, pin_features, @@ -451,8 +489,14 @@ def train_placement( - initial_cell_features: Original cell positions (for comparison) - loss_history: Loss values over time """ + device = cell_features.device + if device.type == "cpu": + device = get_best_device() + # Clone features and create learnable positions - cell_features = cell_features.clone() + cell_features = cell_features.clone().to(device) + pin_features = pin_features.to(device) + edge_list = edge_list.to(device) initial_cell_features = cell_features.clone() # Make only cell positions require gradients @@ -467,6 +511,7 @@ def train_placement( history_run_metadata = { "run_label": "train_placement", "run_started_at": datetime.now().isoformat(timespec="seconds"), + "device": str(device), "num_epochs": num_epochs, "lr": lr, "lambda_wirelength": lambda_wirelength, @@ -583,10 +628,10 @@ def calculate_overlap_metrics(cell_features): } # Extract cell properties - positions = cell_features[:, 2:4].detach().numpy() # [N, 2] - widths = cell_features[:, 4].detach().numpy() # [N] - heights = cell_features[:, 5].detach().numpy() # [N] - areas = cell_features[:, 0].detach().numpy() # [N] + positions = cell_features[:, 2:4].detach().cpu().numpy() # [N, 2] + widths = cell_features[:, 4].detach().cpu().numpy() # [N] + heights = cell_features[:, 5].detach().cpu().numpy() # [N] + areas = cell_features[:, 0].detach().cpu().numpy() # [N] overlap_count = 0 total_overlap_area = 0.0 @@ -644,9 +689,9 @@ def calculate_cells_with_overlaps(cell_features): return set() # Extract cell properties - positions = cell_features[:, 2:4].detach().numpy() - widths = cell_features[:, 4].detach().numpy() - heights = cell_features[:, 5].detach().numpy() + positions = cell_features[:, 2:4].detach().cpu().numpy() + widths = cell_features[:, 4].detach().cpu().numpy() + heights = cell_features[:, 5].detach().cpu().numpy() cells_with_overlaps = set() @@ -753,9 +798,9 @@ def plot_placement( (ax2, final_cell_features, "Final Placement"), ]: N = cell_features.shape[0] - positions = cell_features[:, 2:4].detach().numpy() - widths = cell_features[:, 4].detach().numpy() - heights = cell_features[:, 5].detach().numpy() + positions = cell_features[:, 2:4].detach().cpu().numpy() + widths = cell_features[:, 4].detach().cpu().numpy() + heights = cell_features[:, 5].detach().cpu().numpy() # Draw cells for i in range(N): @@ -812,7 +857,8 @@ def main(): print("while minimizing wirelength.\n") # Set random seed for reproducibility - torch.manual_seed(42) + device = get_best_device() + seed_torch(42) # Generate placement problem num_macros = 3 @@ -821,16 +867,19 @@ def main(): print(f"Generating placement problem:") print(f" - {num_macros} macros") print(f" - {num_std_cells} standard cells") + print(f" - device: {device}") cell_features, pin_features, edge_list = generate_placement_input( - num_macros, num_std_cells + num_macros, + num_std_cells, + device=device, ) # Initialize positions with random spread to reduce initial overlaps total_cells = cell_features.shape[0] spread_radius = 30.0 - angles = torch.rand(total_cells) * 2 * 3.14159 - radii = torch.rand(total_cells) * spread_radius + angles = torch.rand(total_cells, device=device) * 2 * 3.14159 + radii = torch.rand(total_cells, device=device) * spread_radius cell_features[:, 2] = radii * torch.cos(angles) cell_features[:, 3] = radii * torch.sin(angles) diff --git a/test.py b/test.py index 4ef0413..5a35d0e 100644 --- a/test.py +++ b/test.py @@ -27,6 +27,8 @@ OUTPUT_DIR, calculate_normalized_metrics, generate_placement_input, + get_best_device, + seed_torch, train_placement, ) from loss_tracking_utils import create_loss_tracking_db, save_loss_history_sqlite @@ -43,10 +45,10 @@ (5, 4, 75, 1005), (6, 5, 100, 1006), # Large designs - (7, 5, 150, 1007), - (8, 7, 150, 1008), - (9, 8, 200, 1009), - (10, 10, 2000, 1010), + # (7, 5, 150, 1007), + # (8, 7, 150, 1008), + # (9, 8, 200, 1009), + # (10, 10, 2000, 1010), # Realistic designs # (11, 10, 10000, 1011), # (12, 10, 100000, 1012), @@ -75,11 +77,15 @@ def run_placement_test( """ if seed: # Set seed for reproducibility - torch.manual_seed(seed) + seed_torch(seed) + + device = get_best_device() # Generate netlist cell_features, pin_features, edge_list = generate_placement_input( - num_macros, num_std_cells + num_macros, + num_std_cells, + device=device, ) # Initialize positions with random spread @@ -87,8 +93,8 @@ def run_placement_test( total_area = cell_features[:, 0].sum().item() spread_radius = (total_area ** 0.5) * 0.6 - angles = torch.rand(total_cells) * 2 * 3.14159 - radii = torch.rand(total_cells) * spread_radius + angles = torch.rand(total_cells, device=device) * 2 * 3.14159 + radii = torch.rand(total_cells, device=device) * spread_radius cell_features[:, 2] = radii * torch.cos(angles) cell_features[:, 3] = radii * torch.sin(angles) @@ -163,6 +169,7 @@ def run_all_tests(): print(f"Test {idx}/{len(TEST_CASES)}: {size_category} ({num_macros} macros, {num_std_cells} std cells)") print(f" Seed: {seed}") + print(f" Device: {get_best_device()}") # Run test result = run_placement_test( From dc8b4b5ed2ed729983c8ec3feb1cf2b70ab29cee Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 19 Apr 2026 22:50:02 -0700 Subject: [PATCH 08/48] small sqlite cleanup --- .gitignore | 3 +- lab/loss_tracking.ipynb | 179 +++++++++++----------------------------- loss_tracking_utils.py | 49 ++++++++--- 3 files changed, 86 insertions(+), 145 deletions(-) diff --git a/.gitignore b/.gitignore index cf9c59e..1ed17aa 100644 --- a/.gitignore +++ b/.gitignore @@ -8,4 +8,5 @@ profile/* loss_history/* loss_tracking/* -**/__pycache__/** \ No newline at end of file +**/__pycache__/** +temp.txt \ No newline at end of file diff --git a/lab/loss_tracking.ipynb b/lab/loss_tracking.ipynb index e4d05b9..c8bf994 100644 --- a/lab/loss_tracking.ipynb +++ b/lab/loss_tracking.ipynb @@ -2,13 +2,14 @@ "cells": [ { "cell_type": "code", - "execution_count": 16, + "execution_count": null, "id": "imports-cell", "metadata": {}, "outputs": [], "source": [ "from pathlib import Path\n", "import sqlite3\n", + "import struct\n", "\n", "import matplotlib.pyplot as plt\n", "import pandas as pd\n" @@ -16,67 +17,10 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": null, "id": "load-loss-history-db", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Loading latest database: ../loss_tracking/loss_tracking_20260419_204825_830487.sqlite3\n", - "Loaded 1 runs from /Users/vrajpandya/repo/intern_challenge/loss_tracking/loss_tracking_20260419_204825_830487.sqlite3\n" - ] - }, - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
test_idrun_countseedslatest_run_id
0<NA>1[42]20260419_204827_816977
\n", - "
" - ], - "text/plain": [ - " test_id run_count seeds latest_run_id\n", - "0 1 [42] 20260419_204827_816977" - ] - }, - "execution_count": 17, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "loss_tracking_dir = Path(\"../loss_tracking\")\n", "db_paths = sorted(loss_tracking_dir.glob(\"loss_tracking_*.sqlite3\"))\n", @@ -124,8 +68,46 @@ " connection,\n", " )\n", "\n", + "def decode_sqlite_numeric(value):\n", + " if isinstance(value, bytes):\n", + " if len(value) == 4:\n", + " return struct.unpack(\"\n", - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
test_idseedrun_idrunnerrun_labelsaved_at
0<NA>4220260419_204827_816977placement.maintrain_placement2026-04-19T20:48:27
\n", - "" - ], - "text/plain": [ - " test_id seed run_id runner run_label \\\n", - "0 42 20260419_204827_816977 placement.main train_placement \n", - "\n", - " saved_at \n", - "0 2026-04-19T20:48:27 " - ] - }, - "execution_count": 18, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "available_runs\n" ] }, { "cell_type": "code", - "execution_count": 19, + "execution_count": null, "id": "plot-loss-history", "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABWkAAAPeCAYAAAB+8pgoAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/H5lhTAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdeXxM1/8/8Ndkn6wksspGgtiDtmloUUKQKqWlKBFUkahIa/tWrUVpLW2ttQRFaynaii1FUktsIXaxiyUbsu+ZOb8//HI/RhKSNHEjeT0fj3m0c+65577PfY/g7cy5CiGEABERERERERERERHJQkvuAIiIiIiIiIiIiIiqMxZpiYiIiIiIiIiIiGTEIi0RERERERERERGRjFikJSIiIiIiIiIiIpIRi7REREREREREREREMmKRloiIiIiIiIiIiEhGLNISERERERERERERyYhFWiIiIiIiIiIiIiIZsUhLREREREREREREJCMWaYmIiCoBhUKBadOmyR0GERERERERyYBFWiIiem2sXbsWCoUCp0+fljuUF5o2bRoUCgUePXpU5HFnZ2e8//77//k6mzZtwqJFi/7zOBVBoVBovIyMjNCoUSN8++23yMzMLLfrFNzrgpeuri6cnZ3xxRdfIDk5udyuQ0REREREVJF05A6AiIiIgKysLOjolO635U2bNuHixYsIDAysmKD+o06dOmHQoEEAgPT0dBw+fBjffPMNzp07h61bt5brtZYtWwZjY2NkZGTgwIED+Pnnn3HmzBkcOXKkXK9DRERERERUEVikJSIiqgQMDAzkDgEAkJ+fD7VaDT09vf88Vv369fHpp59K70eMGIHc3Fxs374d2dnZ5Trnjz76CLVq1QIAfP755/jkk0+wefNmnDx5Em+99Va5XYeIiIiIiKgicLsDIiKqcs6ePYuuXbvC1NQUxsbG6NixI44fP67RJy8vD9OnT0e9evVgYGAACwsLvPPOOwgNDZX6xMXFwc/PD/b29tDX14etrS169OiBO3fulHvMz+9Jm5aWhsDAQDg7O0NfXx9WVlbo1KkTzpw5AwBo3749QkJCcPfuXemr/s7OztL5CQkJGDp0KKytrWFgYIDmzZtj3bp1Gte8c+cOFAoFfvjhByxatAguLi7Q19fHyZMnYWRkhDFjxhSK8/79+9DW1sacOXPKNE8bGxsoFApp1fDU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dcSIEXKHR5VcmVbSNm/eHIsXL8ZPP/2k0b548WI0a9asXAKjqquGUhdC7yFy8vRxIyENTWrXkDskIiIiIiIiekW2bNkidwj0irzxxhvSQ6+qgxkzZuCrr74q8lhl2xqzIrm7u2Pw4MFyh/HaKVORdt68efDx8cE///wDT09PAEBERATu3btXbk96o6rL0dQR7mZdcfOBIa7Hp7NIS0RERERERFQFKZVKuLpWj2fRAICVlRWsrKzkDkN27u7ucHd3lzuM106Ztjto164drl27hg8//BDJyclITk5Gr169cOnSJfz666/lHSNVMbraumjn0Ba6whLXEtLlDoeIiIiIiIiIiEhWZVpJCwB2dnaFHhB27tw5rF69Gr/88st/DoyqtoKHh12P58PDiIiIiIiIiIioeivTSlqi/8qxli5yte/gTsZZJGfmyh0OERERERERERGRbFikJVnkqNOQbbwPaXpHcCU2We5wiIiIiIiIiIiIZMMiLcnC2tAadoYO0Fe54HJ8ktzhEBERERERERERyaZUe9L26tXrhceTk5P/SyxUjSgUCgxqMBpLw27iTkKe3OEQERERERERERHJplQrac3MzF74cnJywqBBgyoqVqpi6tv8/4eHJaRBrRYyR0NERERERERFad++PQIDA+UOg4gqwLRp0zB48GC5wyjE2dkZixYtkjuMV6pURdrg4OASvYhKwsncELraCqTlZOJhSpbc4RAREREREVE1ERYWhh49esDW1hZGRkZwd3fHxo0bC/XbunUr3NzcYGBggKZNm2L37t3Ssby8PEyYMAFNmzaFkZER7OzsMGjQIDx8+LDQOCEhIfDw8IBSqUTNmjXRs2dPjeMxMTHw8fGBoaEhrKysMG7cOOTn5xcZ+9GjR6GjowN3d3eN9n///Rfdu3eHnZ0dFAoFdu7cWejc+Ph4DB48GHZ2djA0NESXLl1w/fr1l98wAE+ePMHo0aPRoEEDKJVKODo64osvvkBKSkq5z0WlUuGbb75BnTp1oFQq4eLigpkzZ0KIpwu8SnLvw8LCoFAoinydOnWqRHPet28f3n77bZiYmMDS0hK9e/fGnTt3pOOxsbHo378/6tevDy0trWL/MSM5ORn+/v6wtbWFvr4+6tevr/FZSktLQ2BgIJycnKBUKtG6detCMRY3l++//77c5vu6+v3336FQKDR+XZXm12dl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/fTTtbYfp9OpV155xb+fDz/8UE888YR27NihN954o9b2AwAAAAA/hyYtAOCs2rFjh0aMGKFWrVppyZIlio2N9a8bP368LrroIo0YMULr169Xq1atzlpeRUVFCgsLO2v7O5ELL7xQK1eu1Jw5czR+/Hj/8n379unrr7/WNddco/fee++M52GapkpLSxUaGiqn03nG93e8c889V7/5zW/89++55x716dNHs2fPrtUmbVBQULX9XHDBBXrzzTf13HPPKT4+vtb2BQAAAAAnwnQHAICz6umnn1ZxcbFefvnlKg1aSWrSpIlmzpypoqIiTZ06VZL07rvvyjAMffXVV9W2NXPmTBmGoQ0bNviXbdmyRddff70aNWqkkJAQ9erVSx999FGVxx2dd/arr77SPffco7i4OCUlJZ0w5w8//FBpaWlKTEyU0+lU69at9cQTT1T76H3//v3VpUsXrV69WhdccIFCQ0OVkpKiGTNmnPTzExISomuvvVazZ8+usvzNN99UTEyMBg8eXOPjfum4Z82apRtuuEGSNGDAAP9H/BcvXizJN9XCFVdcoQULFqhXr14KDQ3VzJkz/euOn5M2Ly9PDzzwgFq2bCmn06mkpCSNHDlSOTk5/ph//OMf6ty5s1wul2JiYtSrV69qx3WyDMNQfHy8goJ++v/lUaNGqUmTJqqoqKgWP2jQILVv3/609tO3b1+ZpqmdO3dWWf7oo49Wiz/+uTn62vr22281YcIExcbGKiwsTNdcc42ys7NPOR8AAAAADQNNWgDAWfXxxx+rZcuWuuiii2pcf/HFF6tly5aaN2+eJCktLU3h4eF6++23q8XOmTNHnTt3VpcuXST55rk9//zztXnzZv3xj3/Us88+q7CwMA0bNkwffPBBtcffc8892rRpkyZPnqw//vGPJ8x51qxZCg8P14QJEzRt2jT17NnzhI85fPiwLr/8cvXs2VNTp05VUlKS7r77bv373/8+qedHkm655RatWLFCO3bs8C+bPXu2rr/+egUHB1eLP5njvvjii3XfffdJkh5++GH997//1X//+1917NjRv52tW7dq+PDhuuyyyzRt2jT16NGjxvwKCwt10UUX6R//+IcGDRqkadOmacyYMdqyZYv27dsnyTd/7n333adOnTrphRde0GOPPaYePXpo+fLlJ/UcFBcXKycnRzk5Odq5c6defPFFzZ8/X6NGjfLHjBgxQocOHdKCBQuqPDYzM1NffPFFlTNkT8XROXtjYmJO6/GSdO+992rdunWaMmWK7r77bn388ccaN27caW8PAAAAQD1nAgBwluTl5ZmSzKuvvvpn46666ipTkul2u03TNM3hw4ebcXFxZmVlpT8mIyPDtNls5uOPP+5fdumll5pdu3Y1S0tL/cu8Xq95wQUXmG3btvUv+89//mNKMvv27Vtlm8euS09P9y8rLi6uluNdd91lulyuKvvq16+fKcl89tln/cvKysrMHj16mHFxcWZ5efnPHneLFi3MtLQ0s7Ky0kxISDCfeOIJ0zRNc9OmTaYk86uvvvLnt3LlylM+7nfeeceUZH755Zc17luSOX/+/BrXjRo1yn9/8uTJpiTz/fffrxbr9XpN0zTNq6++2uzcufPPHm9N0tPTTUk1ft19993+7ZumaXo8HjMpKcm86aabqmzjueeeMw3DMHfu3Pmz+xo1apQZFhZmZmdnm9nZ2eb27dvNZ555xjQMw+zSpUuVfUkyp0yZUm0bxz83R+szcODAKo9/4IEHTLvdbubl5Z3iMwIAAACgIeBMWgDAWVNQUCBJioiI+Nm4o+vdbrck6aabblJWVpb/o/mSbxoEr9erm266SZKUm5urL774QjfeeKMKCgr8Z2EeOnRIgwcP1rZt27R///4q+7njjjtkt9t/Me/Q0NAqx5CTk6OLLrpIxcXF2rJlS5XYoKAg3XXXXf77DodDd911l7KysrR69epf3Jck2e123XjjjXrzzTcl+S4YlpycXOPZx6dz3CeSkpJywukUjvXee++pe/fuNV7czTAMSVJ0dLT27dunlStXntS+j3fnnXdq4cKFWrhwod577z2NHTtWM2fO1IQJE/wxNptNt956qz766CP/a0vyPV8XXHCBUlJSfnE/RUVFio2NVWxsrNq0aaM//OEPuvDCC/Xhhx/6j+V08z/28RdddJE8Ho9279592tsEAAAAUH/RpAUAnDVHm6/HNtRqcnwzd8iQIYqKitKcOXP8MXPmzFGPHj3Url07SdL27dtlmqb+3//7f/6m29GvKVOmSJKysrKq7OdkmniSbzqBa665RlFRUYqMjFRsbKz/o/T5+flVYhMTE6tdgOxojkc/Rn8ybrnlFm3atEnr1q3T7NmzdfPNN9fYNDyd4z6Rk30+duzY4Z9i4kQeeughhYeHq3fv3mrbtq3Gjh2rb7/99qS2L0lt27bVwIEDNXDgQF177bWaPn267rnnHr3wwgv64Ycf/HEjR45USUmJf1qHrVu3avXq1RoxYsRJ7SckJMTfDP7Pf/6jjh07Kisrq0pj/nQ0b968yv2jUyccPnz4V20XAAAAQP0U9MshAADUjqioKDVt2lTr16//2bj169erWbNmioyMlCQ5nU7//KovvfSSDh48qG+//VZ/+ctf/I/xer2SpD/84Q8nPBu0TZs2Ve6fTCMuLy9P/fr1U2RkpB5//HG1bt1aISEhWrNmjR566CH/fmtbnz591Lp1a91///1KT0/XLbfcUmPc6Rz3ifzaxuSxOnbsqK1bt+qTTz7R/Pnz9d577+mll17S5MmT9dhjj53WNi+99FJNnz5dS5YsUdeuXSVJnTp1Us+ePfX6669r5MiRev311+VwOHTjjTee1DbtdrsGDhzovz948GB16NBBd911V7ULztXk+IvHHbvdmpimeVJ5AQAAAGhYaNICAM6qK664Qv/617/0zTffqG/fvtXWf/3119q1a1eVKQMk35QHr732mhYtWqTNmzfLNE3/VAeS1KpVK0lScHBwlabbr7V48WIdOnRI77//vi6++GL/8vT09BrjDxw4oKKioipn0/7444+SpJYtW57SvocPH64///nP6tix4wkv4nUqx/1rPr5/rNatW2vDhg2/GBcWFqabbrpJN910k8rLy3XttdfqySef1KRJkxQSEnLK+62srJTku3DZsUaOHKkJEyYoIyNDs2fPVlpa2mlf9Ktp06Z64IEH9Nhjj+m7777T+eefL8l3JmxeXl6V2PLycmVkZJzWfgAAAADgWEx3AAA4qyZOnKjQ0FDdddddOnToUJV1ubm5GjNmjFwulyZOnFhl3cCBA9WoUSPNmTNHc+bMUe/evat8PD8uLk79+/fXzJkza2ycZWdnn1a+R8+IPPYMyPLycr300ks1xldWVmrmzJlVYmfOnKnY2Fj17NnzlPZ9++23a8qUKXr22WdPGHMqx320cXx8s/FUXXfddVq3bp1/ioFjHX2ejq+tw+FQp06dZJqmKioqTmu/H3/8sSSpe/fuVZYPHz5chmFo/Pjx2rlzp38qitN17733yuVy6a9//at/WevWrbVkyZIqcS+//PIJz6QFAAAAgFPBmbQAgLOqbdu2eu2113Trrbeqa9euGj16tFJSUrRr1y69+uqrysnJ0ZtvvqnWrVtXeVxwcLCuvfZavfXWWyoqKtIzzzxTbdsvvvii+vbtq65du+qOO+5Qq1atdPDgQS1btkz79u3TunXrTjnfCy64QDExMRo1apTuu+8+GYah//73vyf82HpiYqL+9re/adeuXWrXrp3mzJmjtWvX6uWXX1ZwcPAp7btFixZ69NFHfzHuZI+7R48estvt+tvf/qb8/Hw5nU5dcskliouLO6W8Jk6cqHfffVc33HCDfve736lnz57Kzc3VRx99pBkzZqh79+4aNGiQEhISdOGFFyo+Pl6bN2/W9OnTlZaW9osXjpOkNWvW6PXXX5fkm6N40aJFeu+993TBBRdo0KBBVWJjY2M1ZMgQvfPOO4qOjlZaWtopHc/xGjdurNtuu00vvfSSNm/erI4dO+r222/XmDFjdN111+myyy7TunXrtGDBAjVp0uRX7QsAAAAAJM6kBQBY4IYbbtDq1avVv39/vfrqqxozZoz+9a9/qV+/flq9erWuvfbaGh930003+T/qXtOco506ddKqVauUlpamWbNmaezYsZoxY4ZsNpsmT558Wrk2btxYn3zyiZo2bapHHnlEzzzzjC677DJNnTq1xviYmBh9+umnWrVqlSZOnKi9e/dq+vTpuuOOO05r/yfjZI87ISFBM2bMUFZWlkaPHq3hw4dr06ZNp7y/8PBwff3117r77rv16aef6r777tNLL72k9u3bKykpSZJ01113qbCwUM8995zGjh2ruXPn6r777vM3Xn/Jm2++qREjRmjEiBG677779P3332vixIlasGCBbLbqb19Gjhwpyfe6cDqdp3xMx5swYYJsNpv+9re/SZLuuOMOPfTQQ1qyZIl+//vfKz09XQsXLqx2kTgAAAAAOB2GyRUsAACoFf3791dOTs5JzdeK2vXhhx9q2LBhWrJkiS666CKr0wEAAACAU8KZtAAAoM7717/+pVatWtV4MToAAAAACHTMSQsAAOqst956S+vXr9e8efM0bdo0GYZhdUoAAAAAcMpo0gIAgDpr+PDhCg8P1+jRo3XPPfdYnQ4AAAAAnBbmpAUAAAAAAAAACzEnLQAAAAAAAABYiCYtAAAAAAAAAFiIJi0AAAAAAAAAWIgLh9USr9erAwcOKCIigitLAwAAAMBpMk1TBQUFSkxM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oqKwePFirFixAqdOncLgwYORkZGBvn37PvoTUxL53irs37jIm4cREREREREVc3369JEnMRER5WXnzp0oX7680mnk8rhevwpcpPXx8YGvr2+BHgX1xRdfIDU1Fa1atUJISIj8WLNmjRwze/ZsdOzYES+//DJatGiB4OBgrF+/Xt6uVquxceNGqNVqhIeH480330SvXr0wceJEOSYsLAybNm3C1q1bUbduXcycORNLlixBRESEHPP6669jxowZGDduHOrVq4cjR45g8+bNuW4mRoXkWRpQaQBLJpAef+94IiIiIiIikrVq1QrDhg17ZK+j/F26dAn9+/dHWFgYDAYDKlasiPHjx8s3WM927NgxNG/eHHq9HmXKlMFnn33mtH3x4sVo3rw5fHx84OPjgzZt2uRazhEATp06hRdffBFeXl5wc3NDo0aNcPnyZXm70WhEZGQk/Pz84O7ujpdffjnXco7ZkpKSULp0aUiShJSUFLk9NjYW3bt3R5UqVaBSqfJ8z1gsFkycOBEVK1aEXq9H3bp1sXnz5gKftylTpqBRo0bw8PBAYGAgunTpgjNnzjjFFEVfAGDVqlWoW7cuXF1dERISgn79+iEpKUneXpBzL0lSno/p06cXqL9nz55F586d4e/vD09PTzzzzDPYsWOHU8y7776Lhg0bQqfToV69ennuRwiBGTNmoEqVKtDpdChVqhQmTZrkFDN//nxUr14dBoMBVatWxcqVK522t2rVKs++dOjQocj6+7g6d+4cPDw8nJZZBQr+81mUCrzcwZw5c4r84KIAMyr1ej3mz5+P+fPn5xtTrly5XMsZ3KlVq1Y4fPjwXWOGDBmS7/IG9IDUGsC7HHDjPHDjAuCR91q/REREREREVDKZzWZotdrH/linT5+G3W7Hl19+iUqVKuHEiRMYMGAAMjIyMGPGDACO+9a0bdsWbdq0wcKFC3H8+HH069cP3t7eGDhwIADHLMRu3bqhadOm0Ov1mDZtGtq2bYuTJ0+iVKlSAIDz58/jmWeeQf/+/TFhwgR4enri5MmTTms3Dx8+HJs2bcK6devg5eWFIUOGoGvXrti7d2+u3Pv37486derg6tWrTu0mkwkBAQEYO3YsZs+enWe/x44di6+//hqLFy9GtWrVsGXLFrz00kvYt28f6tevf8/ztmvXLkRGRqJRo0awWq344IMP0LZtW8TE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l7Nnz6Jz587w9/eHp6cnnnnmGezYsUPeXpBz36dPH0iSlOtRs2bNAvXXZrPho48+QlhYGAwGAypWrIhPPvkEQgg5Zv369Wjbti38/PwgSRKOHDmS576io6Px3HPPwc3NDZ6enmjRogWysrLk7X/99Reef/55eHt7w8/PDwMHDkR6erq8/auvvsqzL5IkISEhoUj6+7gSQqB9+/aQJAnff/+93F7Qn8+HoVBF2iZNmqBixYr47rvv0LdvX/zzzz/Ytm0b+vfvDy8vr6LOkUoqv4qOrzfOAzkuVkRERERERFRy2Gw22O32EnGsXbt2ITIyEn/88Qe2bt0Ki8WCtm3bIiMjQ44ZPnw4fvrpJ6xbtw67du3CtWvX0LVrV3n7oUOHEBgYiK+//honT57Ehx9+iDFjxmDevHlOx3rttdewbds2LF26FGfOnME333yDqlWrytv37duHbt26oX///jh8+DC6dOmCLl264MSJE7ny3rBhA/744w+Ehobm2mY2m/Hqq69i8ODBefb56NGjeOGFF9CuXTscPnwYa9aswY8//ojRo0cX6Jzt27cPderUwf/+9z8cO3YMffv2Ra9evbBx48Yi70vHjh1htVqxfft2HDp0CHXr1kXHjh3lCYUFOfdz585FbGys/Pj333/h6+uLV199tUD9nTZtGr744gvMmzcPp06dwrRp0/DZZ5/h888/l2MyMjLwzDPPYNq0afnuJzo6Gu3atUPbtm1x4MAB/PnnnxgyZAhUKkcp79q1a2jTpg0qVaqE/fv3Y/PmzTh58iT69Okj7+P111936ktsbCwiIiLQsmVLBAYGFkl/H1dz5syBJEm52gv68/lQiEL44IMPRExMjEhMTBSJiYmF2UWJk5qaKgCI1NRUpVPJxWazidjYWGGz2ZROxZnVIsS1I0IY05TO5KErtmPwBOEYKI9jUDxwHJTHMVAex0B5HAPlFecxeNh/W2VlZYmYmBiRlZX1UPb/sLRs2VIMGTJEDB06VHh7e4vAwECxaNEikZ6eLvr06SPc3d1FxYoVxc8//yy/xmq1in79+ony5csLvV4vqlSpIubMmSNvz8rKEjVq1BADBgyQ286dOyfc3d3F0qVL881l5syZolatWsLV1VWULl1aDB48WNy8eVPevnz5cuHl5SV++OEHUb16daFWq8XFixeF0WgU7733nggNDRWurq7i6aefFjt27JBfd/36dfHGG2+I0NBQYTAYRK1atcTq1avvel7yO1bLli3F0KFDnWI7d+4sevfuLT8vV66cmDRpkujbt69wd3cXZcqUEV9++eVdj3enhIQEAUDs2rVLCCFESkqKcHFxEevWrZNjTp06JQCI6OjofPfz9ttvi2effVZ+/ssvvwgvLy+RlJSU72tee+010aFDB6e2xo0bi//7v/9zarty5YooVaqUOHHihChXrpyYPXt2nvvLPpd3GjNmjHjqqaec2n788Ueh1+tFWlrh/p5/4YUXRN++fYu0L4mJiQKA2L17t9yWlpYmAIitW7fmm8ud5/5OGzZsEJIkiUuXLhWobx06dBD9+vVzauvatavo0aNHrtiLFy8KAOLw4cO5tjVu3FiMHTs23+N8+eWXIjAw0Ok6fuzYMQFA/P3333m+JiEhQbi4uIiVK1fmu9+C9rdcuXJOP793unTpkujYsaPw9vYWrq6uokaNGmLTpk3y9uPHj4t27doJNzc3ERgYKN58802nGqPNZhOTJ0+Wr1916tRx+rkSQohNmzaJypUrC71eL1q1aiWWL18uAIjk5OS75n748GFRqlQpERsbKwCIDRs23DX+Xu+RbA/6++W+Z9KmpKQgOTkZzZs3R1BQEIKCguDv748hQ4Y8tms+kELUGiCkLqDzUDoTIiIiIiJ6wplsJphsJqePJFvtVphsJljsloLH2goWWxgrVqyAv78/Dhw4gHfeeQeDBw/Gq6++iqZNm+Kvv/5C27Zt0bNnT2RmZgIA7HY7SpcujXXr1iEmJgbjxo3DBx98gLVr1wIA9Ho9Vq1ahRUrVuCHH36AzWbDm2++ieeffx79+vXLNw+VSoX//Oc/OHnyJFasWIHt27dj5MiRTjGZmZmYNm0alixZgpMnTyIwMBBDhgxBdHQ0vv32Wxw7dgyvvvoq2rVrh7///huAY5mAhg0bYtOmTThx4gQGDhyInj174sCBA3c9L3kdq6BmzpwpL+H49ttvY/DgwbmWL7ib1NRUAICvry8Axyw8i8WCNm3ayDHVqlVD2bJlER0dfdf9ZO8DAH788Uc89dRT+Oyzz1CqVClUqVIF77//vtNH3aOjo52OAwARERFOx7Hb7ejZsydGjBhR6I+vm0wm6PV6pzaDwQCj0YhDhw4Vap939rco+uLn54eqVati5cqVyMjIgNVqxZdffonAwEA0bNiwwLncaenSpWjTpg3KlStXoL41bdoU27Ztw9mzZwE4ZiL//vvvaN++fYFeDwAJCQnYv38/AgMD0bRpUwQFBaFly5b4/fff5RiTyQStVivPrAUc4wLAKS6nlStXwtXVFa+88kq+x77f/uYnMjISJpMJu3fvxvHjxzFt2jS4u7sDcNQWn3vuOdSvXx8HDx7E5s2bER8fj9dee01+/ZQpU7By5UosXLgQJ0+exPDhw/Hmm29i165dAIB///0XXbt2RadOnXDkyBG89dZbBZrdnZmZie7du2P+/PkIDg4uUF/u9R4pMvdT0U1KShJVqlQRbm5uYuDAgWL27Nli9uzZYsCAAcLNzU1Uq1ZN3Lhxo1DV4scdZ9LS3XAMlMcxUB7HoHjgOCiPY6A8joHyOAbKK85joNRM2sjfIkXkb5EizXR7ZuAvF38Rkb9Fiq9jvnaKHb5juIj8LVJcz7wut237Z5uI/C1SLD++3Cl25K6RIvK3SHHt5jW57fcrv9933i1bthTPPPOM/NxqtQo3NzfRs2dPuS17VtjdZmxGRkaKl19+2ants88+E/7+/mLIkCEiJCREXL9+PZ9X523dunXCz89Pfp49m+3IkSNy2z///CPUarW4evWq02tbt24txowZk+++O3ToIN577718t+d1LCFEgWfSvvnmm/Jzu90uAgMDxRdffJHv8XKy2WyiQ4cOolmzZnLbqlWrhFarzRXbqFEjMXLkyDz3s3fvXqHRaMSWLVvktoiICKHT6USHDh3E/v37xaZNm0S5cuVEnz595BgXF5dcM43nz58vAgMD5eeTJ08Wzz//vLDb7XKf73cm7ZYtW4RKpRKrV68WVqtVXLlyRTRv3lwAuOdM57ysWbNGaLVaceLEiSLvy7///isaNmwoJEkSarVahISEiL/++ivfXPI69zldvXpVqNVqsWbNmgL3z2aziVGjRglJkoRGoxGSJInJkyfnGZvfTNro6GgBQPj6+oply5aJv/76SwwbNkxotVpx9uxZIYQQJ06cEBqNRnz22WfCZDKJGzduiJdfflkAyPd41atXF4MHD8439/vp771m0tauXVt8/PHHeW775JNPRNu2bZ3a/v33XwFAnDlzRhiNRuHq6ir27dvnFNO/f3/RrVs3IYRjhneNGjWcto8aNeqeM2kHDhwo+vfvLz/HPWbS3us9ktODzqTV3E9Bd+LEidBqtTh//jyCgoJybWvbti0mTpyI2bNnP3DxmJ4QGUnA31sASxbQqL/S2RARERERERVbderUkb9Xq9Xw8/ND7dq15bbsv9OzbwgEAPPnz8eyZctw+fJlZGVlwWw2o169ek77fe+99/D9999j3rx5+OWXX+Dn53fXPH777TdMmTIFp0+fRlpaGqxWK4xGIzIzM+Hq6goA0Gq1TvkeP34cNpsNVapUcdqXyWSSj2ez2TB58mSsXbsWV69ehdlshslkkveZnzuPdT9yvk6SJAQHBzudv7uJjIzEiRMn8p21WBAnTpxA586dMX78eLRt21Zut9vtkCQJq1atku/9M2vWLLzyyitYsGCBPGPybg4dOoS5c+fir7/+ynPtzYJq27Ytpk+fjkGDBqFnz57Q6XT46KOPsGfPHqdZnAWxY8cO9O3bF4sXL76vmb0F6YsQApGRkQgMDMSePXtgMBiwZMkSdOrUCX/++SdCQkKc4vM79zmtWLEC3t7e6NKlS4FzXbt2LVatWoXVq1ejZs2aOHLkCIYNG4bQ0FD07t27QPvIXlf5//7v/9C3b18AQP369bFt2zYsW7YMU6ZMQc2aNbFixQpERUVhzJgxUKvVePfddxEUFJTnuERHR+PUqVP473//m+9xC9Pf/Lz77rsYPHgwfv31V7Rp0wYvv/yy/PN29OhR7NixQ55Zm9P58+dhsViQmZmJ559/3mmb2WxG/fr1AQCnTp1C48aNnbaHh4ffNacff/wR27dvx+HDhwvUh4K8R4rSfRVpv//+e3z55Ze5CrQAEBwcjM8++wyDBg1ikZYKzm4BYn4AVBqgQW/HEghERERERESP2MxWMwEAWpVWbmtTtg2eLfMsVJJzwWNK8ym5YluUboFmpZpBdcf9uSc2m5grtnGIc2GhoFxcXJyeS5Lk1JZdvMou8Hz77bd4//33MXPmTISHh8PDwwPTp0/H/v37nfaTkJCAs2fPQq1W4++//0a7du3yzeHSpUvo2LEjBg8ejEmTJsHX1xe///47+vfvD7PZLBdUDQaDUzEtPT0darUahw4dglqtdtpndqFm+vTpmDt3LubMmYPatWvDzc0Nw4YNg9lsvut5ufNYgGNJBnHHDaotFuelKIC8z2lBbjw2ZMgQbNy4Ebt370bp0qXl9uDgYJjNZqSkpMDb21tuj4+Pz/XR6piYGLRu3RoDBw7E2LFjnbaFhISgVKlSTjdnr169OoQQuHLlCipXrozg4GDEx8c7vS7ncfbs2YOEhASULVtW3m6z2fDee+9hzpw5uHTp0j37mS0qKgrDhw9HbGwsfHx8cOnSJYwZMwYVKlQo8D527dqFTp06Yfbs2ejVq5fTtqLoy/bt27Fx40YkJyfD09MTALBgwQJs3boVK1ascPoo/N3OfTYhBJYtW4aePXtCq9XmGZOXESNGYPTo0XjjjTcAALVr18Y///yDKVOmFLhIm11QrlGjhlN79erVcfnyZfl59+7d0b17d8THx8PNzQ2SJGHWrFl5jsuSJUtQr169fJd+KGx/8/PWW28hIiICmzZtwq+//oopU6Zg5syZeOedd5Ceno5OnTrleeO0kJAQ+YZxmzZtQqlSpZy263S6Que0fft2nD9/3ulnEwBefvllNG/eHDt37pTbCvIeKWr39V8esbGxd/2fjlq1asl3zCMqEPcgQOsG2K1Ayj9KZ0NERERERE8onVoHnVrnVOzTqDTQqXVwUbkUPFZdsNhHYe/evWjatCnefvtt1K9fH5UqVcL58+dzxfXr1w+1a9fGihUrMGrUKJw6dSrffR46dAh2ux0zZ85EkyZNUKVKFVy7du2eudSvXx82mw0JCQmoVKmS0yO7ELd371507twZb775JurWrYsKFSrI63rer4CAAMTGxsrPbTabXPh5EEIIDBkyBBs2bMD27dsRFhbmtL1hw4ZwcXHBtm3b5LYzZ87g8uXLTrP8Tp48iWeffRa9e/fGpEmTch2nWbNmuHbtGtLT0+W2s2fPQqVSyUXh8PBwp+MAwNatW+Xj9OzZE8eOHcORI0fkR2hoKEaMGIEtW7bcd98lSUJoaCgMBgO++eYblClTBg0aNCjQa3fu3IkOHTpg2rRpGDhwYK7tRdGX7LWY75xFqlKpnArv9zr32Xbt2oVz586hf//7+9RvZmZmrhzUanWBiv/Zypcvj9DQ0FzrI589ezbPtWKDgoLg7u6ONWvWQK/X55qBmp6ejrVr1961L4Xt792UKVMGgwYNwvr16/Hee+9h8eLFAIAGDRrg5MmTKF++fK7rgZubG2rUqAGdTofLly/n2l6mTBkAjoL1netV//HHH3fNZ/To0bneRwAwe/ZsLF++XI4r6HukqN3XbwZ/f39cunTJ6X+Jcrp48eKjWUiXSg5JAvwqAbFHgaTzgF9FpTMiIiIiIiIqESpXroyVK1diy5YtCAsLw3//+1/8+eefToXF+fPnIzo6GseOHUOZMmWwadMm9OjRA3/88Uees+kqVaoEi8WCzz//HJ06dcLevXuxcOHCe+ZSpUoV9OjRA7169cLMmTNRv359JCYmYtu2bahTpw46dOiAypUr47vvvsO+ffvg4+ODWbNmIT4+PtdswoJ47rnnEBUVhU2bNqFixYqYNWtWkdzsPDIyEqtXr8YPP/wADw8PeaKal5cXDAYDvLy80L9/f0RFRcHX1xeenp545513EB4ejiZNmgBwfIT6ueeeQ0REBKKiouR9qNVqBAQEAHDMkPzkk0/Qt29fTJgwAdevX8eIESPQr18/eamDoUOHomXLlpg5cyY6dOiAb7/9FgcPHsSiRYsAOG6kdefSFS4uLggODkbVqlXltsuXL+PGjRu4fPkybDabXLiqVKmS0yzndu3aQaVSYf369Zg6dSrWrl2ba1Z0Xnbs2IGOHTti6NChePnll+X+arVauYZUFH0JDw+Hj48PevfujXHjxsFgMGDx4sW4ePEiOnToUOBzn23p0qVo3LgxatWqdc8+5tSpUydMmjQJZcuWRc2aNXH48GHMmjXL6WZ82ec7+z84souxwcHBCA4OhiRJGDFiBMaPH4+6deuiXr16WLFiBU6fPo3vvvtO3s+8efPQtGlTuLu7Y+vWrRgxYgSmTp2aa6bomjVrYLVa8eabb+abd2H7m59hw4ahffv2qFKlCpKTk7Fjxw5Ur14dgOPnaPHixejWrRtGjhwJX19fnDt3Dt9++y2WLFkCDw8PvP/++xg+fDjsdjueeeYZpKamYu/evfD09ETv3r0xaNAgzJw5EyNGjMBbb72FQ4cO4auvvrprTtnn905ly5aVr4v38x4pcvezgG3fvn1FixYthMlkyrXNaDSKli1bir59+xZqcdzHHW8c9gCOrhFi1WtC7JuvdCYPTbEfgycAx0B5HIPigeOgPI6B8jgGyuMYKK84j4FSNw4r7vK6EVZeN05CjpvgGI1G0adPH+Hl5SW8vb3F4MGDxejRo0XdunWFEEKcOnVKGAwGpxs2JScnizJlyuR7kyshhJg1a5YICQkRBoNBREREiJUrVzrdrCe/G1CZzWYxbtw4Ub58eeHi4iJCQkLESy+9JI4dOyaEcNysvHPnzsLd3V0EBgaKsWPHil69eonOnTvnm8vdjjV48GDh6+srAgMDxZQpU/K8cdid569u3bpi/Pjx+R4PQJ6P5cuXyzFZWVni7bffFj4+PsLV1VW89NJLIjY2Vt4+fvz4PPdRrlw5p2OdOnVKtGnTRhgMBlG6dGkRFRUlMjMznWLWrl0rqlSpIrRarahZs6bYtGlTvrnn1+fevXvnmU/Om0I9++yzwsvLS+j1etG4cWPx888/3/U4Bdl/y5Yti7wvf/75p2jbtq3w9fUVHh4eokmTJk65FvTcp6SkCIPBIBYtWlTgfmZLS0sTQ4cOFWXLlhV6vV5UqFBBfPjhh061tOwb3t35uPO9N2XKFFG6dGnh6uoqwsPDxZ49e5y29+zZU/j6+gqtVivq1KkjVq5cmWdO4eHhonv37vnmXJj+3uvGYUOGDBEVK1YUOp1OBAQEiJ49ezrdlPDs2bPipZdeEt7e3sJgMIhq1aqJYcOGyTeGs9vtYs6cOaJq1arCxcVFBAQEiIiICLFr1y55Hz/99JOoVKmS0Ol0onnz5mLZsmX3vHHYnXJeM4Uo+HskLw/6+0W6lVCBXLlyBU899RR0Oh0iIyNRrVo1CCFw6tQpLFiwACaTCQcPHpSnHj9J0tLS4OXlhdTUVHntk+LCbrcjISEBgYGB972o9yNx9RCw6zPAMxToWDLXMy72Y/AE4Bgoj2NQPHAclMcxUB7HQHkcA+UV5zF42H9bGY1GXLx4EWFhYdDr9UW+fyKiJ0H58uXx1VdfoVWrVkqnUmw86O+X+1ruoHTp0oiOjsbbb7+NMWPGyItwS5KE559/HvPmzXsiC7T0gPwqOb6mXQPMGY41aomIiIiIiIiIiJ4Q971aeVhYGH755RckJyfj77//BuBYp4Rr0VKh6b0A90DAnAmkxwO+Bb87JBEREREREREpp3379tizZ0+e2z744AN88MEHjzijh+fy5ct3XSM5JiYGZcuWfYQZUUlS6FtK+vj44Omnny7KXOhJ1vZTQOfpuJEYERERERERET0WlixZgqysrDy3lbQJfaGhofKN1fLb/qQYNmwYypcvr3QaJUqhi7RERUrvpXQGRERERERERHSfSpUqpXQKj4xGo0GlSpWUTqNYGDZsmNIplDjFa4V4IiIiIiIiIiIioicMi7RUfETPB75/23EDMSIiIiIiooco+0bYRERERcFutz/Q67ncARUf6fFAZhJw/Szg+eSs40JERERERI+Oi4sLJElCYmIiAgICIPG+GERE9ACEEDCbzUhMTIRKpYJWqy3UflikpeLDrzKQeAa4/jdQoZXS2RARERERUQmkVqtRunRpXLlyBZcuXVI6HSIiKiFcXV1RtmxZqFSFW7iARVoqPvyrOL4mnVM2DyIiIiIiKtHc3d1RuXJlWCwWpVMhIqISQK1WQ6PRPNCnM1ikpeLDv7Lja/I/gMUIuOiVzYeIiIiIiEostVoNtVqtdBpEREQAFL5x2O7du9GpUyeEhoZCkiR8//33Ttv79OkDSZKcHu3atXOKuXHjBnr06AFPT094e3ujf//+SE9Pd4o5duwYmjdvDr1ejzJlyuCzzz7Llcu6detQrVo16PV61K5dGz///HOR95fuwdUXcPUDIIAb55XOhoiIiIiIiIiI6JFQtEibkZGBunXrYv78+fnGtGvXDrGxsfLjm2++cdreo0cPnDx5Elu3bsXGjRuxe/duDBw4UN6elpaGtm3boly5cjh06BCmT5+Ojz/+GIsWLZJj9u3bh27duqF///44fPgwunTpgi5duuDEiRNF32m6O79Kjq/X/1Y2DyIiIiIiIiIiokdE0eUO2rdvj/bt2981RqfTITg4OM9tp06dwubNm/Hnn3/iqaeeAgB8/vnneOGFFzBjxgyEhoZi1apVMJvNWLZsGbRaLWrWrIkjR45g1qxZcjF37ty5aNeuHUaMGAEA+OSTT7B161bMmzcPCxcuLMIe0z0FVgcyrgM6D6UzISIiIiIiIiIieiSK/Zq0O3fuRGBgIHx8fPDcc8/h008/hZ+fHwAgOjoa3t7ecoEWANq0aQOVSoX9+/fjpZdeQnR0NFq0aAGtVivHREREYNq0aUhOToaPjw+io6MRFRXldNyIiIhcyy/kZDKZYDKZ5OdpaWkAALvdDrvdXhRdLzJ2ux1CiGKXV54qRzgeAPA45FtAj9UYlFAcA+VxDIoHjoPyOAbK4xgoj2OgvOI8BsUxJyIiooetWBdp27Vrh65duyIsLAznz5/HBx98gPbt2yM6OhpqtRpxcXEIDAx0eo1Go4Gvry/i4uIAAHFxcQgLC3OKCQoKkrf5+PggLi5ObssZk72PvEyZMgUTJkzI1Z6YmAij0Vio/j4sdrsdqampEEJApVJ0hYsnFsdAeRwD5XEMigeOg/I4BsrjGCiPY6C84jwGN2/eVDoFIiKiR65YF2nfeOMN+fvatWujTp06qFixInbu3InWrVsrmBkwZswYp9m3aWlpKFOmDAICAuDp6algZrnZ7XZIkoSAgIBi9w+wfFlNgM0E6IrXuSysx3IMShiOgfI4BsUDx0F5HAPlcQyUxzFQXnEeA71er3QKREREj1yxLtLeqUKFCvD398e5c+fQunVrBAcHIyEhwSnGarXixo0b8jq2wcHBiI+Pd4rJfn6vmPzWwgUca+XqdLpc7SqVqtj9IwcAJEkqtrnlEvMjcPRboPLzwFN9lc6myDxWY1BCcQyUxzEoHjgOyuMYKI9joDyOgfKK6xgUt3yIiIgehcfqt9+VK1eQlJSEkJAQAEB4eDhSUlJw6NAhOWb79u2w2+1o3LixHLN7925YLBY5ZuvWrahatSp8fHzkmG3btjkda+vWrQgPD3/YXaK8uPoBwgYknVM6EyIiIiIiIiIioodO0SJteno6jhw5giNHjgAALl68iCNHjuDy5ctIT0/HiBEj8Mcff+DSpUvYtm0bOnfujEqVKiEiwnFjqerVq6Ndu3YYMGAADhw4gL1792LIkCF44403EBoaCgDo3r07tFot+vfvj5MnT2LNmjWYO3eu01IFQ4cOxebNmzFz5kycPn0aH3/8MQ4ePIghQ4Y88nNCAPyrOL4mXwKsZkVTISIiIiIiIiIietgULdIePHgQ9evXR/369QEAUVFRqF+/PsaNGwe1Wo1jx47hxRdfRJUqVdC/f380bNgQe/bscVpmYNWqVahWrRpat26NF154Ac888wwWLVokb/fy8sKvv/6KixcvomHDhnjvvfcwbtw4DBw4UI5p2rQpVq9ejUWLFqFu3br47rvv8P3336NWrVqP7mTQbW7+gN4LsFuB5ItKZ0NERERERERERPRQKbombatWrSCEyHf7li1b7rkPX19frF69+q4xderUwZ49e+4a8+qrr+LVV1+95/HoEZAkwK8ycPUgcP0sEFBV6YyIiIiIiIiIiIgemsdqTVp6gmQXZhNOK5sHERERERERERHRQ8YiLRVPgdUdXxNPA3eZbU1ERERERERERPS4U3S5A6J8+YQB5Zo6biJmtwJqF6UzIiIiIiIiIiIieihYpKXiSa0Bmg1VOgsiIiIiIiIiIqKHjssdEBERERERERERESmIRVoqvoQA0mKBCzu5Li0REREREREREZVYXO6Aii+7FfhlBGCzONam9QxVOiMiIiIiIiIiIqIix5m0VHypXQC/yo7v42OUzYWIiIiIiIiIiOghYZGWirfA6o6viaeUzYOIiIiIiIiIiOghYZGWirfAGo6vCae4Li0REREREREREZVILNJS8eZfGVBpgMwkICNR6WyIiIiIiIiIiIiKHIu0VLxpdIBvBcf3CVyXloiIiIiIiIiISh4Waan4y16XNoHr0hIRERERERERUcmjUToBonsKawH4VwECqiqdCRERERERERERUZFjkZaKP6/SjgcREREREREREVEJxOUOiIiIiIiIiIiIiBTEmbT0eEi7Blz6HdC6AdU6KJ0NERERERERERFRkeFMWno8pF0DTvwPOLdN6UyIiIiIiIiIiIiKFIu09HjIvmlY2lXAmKpsLkREREREREREREWIRVp6POg8AO+yju8TTiubCxERERERERERURFikZYeH4HVHV8TYpTNg4iIiIiIiIiIqAixSEuPj4DsIu0pZfMgIiIiIiIiIiIqQizS0uMjeyZtymXAlK5sLkREREREREREREWERVp6fBi8AY8QwMUA3IxVOhsiIiIiIiIiIqIioVE6AaL70nocYPABJEnpTIiIiIiIiIiIiIoEi7T0eHH1VToDIiIiIiIiIiKiIsXlDujxJITjQURERERERERE9JhjkZYeP0e+AX6IBK79pXQmRERERERERERED4xFWnr8mNKAzCQgPkbpTIiIiIiIiIiIiB4Yi7T0+Amq6fgaf0LZPIiIiIiIiIiIiIoAi7T0+Ams4fia/A9guqlsLkRERERERERERA+IRVp6/Lj6Ap6lAAgg4ZTS2RARERERERERET0QFmnp8RR0azYtlzwgIiIiIiIiIqLHHIu09HgKqu34Gn9S2TyIiIiIiIiIiIgeEIu09HgKqgF4lwWCawN2u9LZEBERERERERERFZpG6QSICkXnAbwwXeksiIiIiIiIiIiIHhhn0hIREREREREREREpiEVaerxZzUDiGaWzICIiIiIiIiIiKjQWaenxZTUD698Cto4DMpKUzoaIiIiIiIiIiKhQWKSlx5dGC3iVcXwff0LZXIiIiIiIiIiIiApJ0SLt7t270alTJ4SGhkKSJHz//fdO24UQGDduHEJCQmAwGNCmTRv8/fffTjE3btxAjx494OnpCW9vb/Tv3x/p6elOMceOHUPz5s2h1+tRpkwZfPbZZ7lyWbduHapVqwa9Xo/atWvj559/LvL+0kMQVNPxNf6ksnkQEREREREREREVkqJF2oyMDNStWxfz58/Pc/tnn32G//znP1i4cCH2798PNzc3REREwGg0yjE9evTAyZMnsXXrVmzcuBG7d+/GwIED5e1paWlo27YtypUrh0OHDmH69On4+OOPsWjRIjlm37596NatG/r374/Dhw+jS5cu6NKlC06c4OzMYi9nkVYIZXMhIiIiIiIiIiIqBI2SB2/fvj3at2+f5zYhBObMmYOxY8eic+fOAICVK1ciKCgI33//Pd544w2cOnUKmzdvxp9//omnnnoKAPD555/jhRdewIwZMxAaGopVq1bBbDZj2bJl0Gq1qFmzJo4cOYJZs2bJxdy5c+eiXbt2GDFiBADgk08+wdatWzFv3jwsXLjwEZwJKjT/qoBKA2ReB9ITAI8gpTMiIiIiIiIiIiK6L8V2TdqLFy8iLi4Obdq0kdu8vLzQuHFjREdHAwCio6Ph7e0tF2gBoE2bNlCpVNi/f78c06JFC2i1WjkmIiICZ86cQXJyshyT8zjZMdnHoWLMRQ/4VXR8z3VpiYiIiIiIiIjoMaToTNq7iYuLAwAEBTnPjAwKCpK3xcXFITAw0Gm7RqOBr6+vU0xYWFiufWRv8/HxQVxc3F2PkxeTyQSTySQ/T0tLAwDY7XbY7fYC9/NRsNvtEEIUu7yKTGANSAmnIeJOABWeVTqbPJX4MXgMcAyUxzEoHjgOyuMYKI9joDyOgfKK8xgUx5yIiIgetmJbpC3upkyZggkTJuRqT0xMdFoztziw2+1ITU2FEAIqVbGdPF1oakMlaCp0gtWvOmwJCUqnk6eSPgaPA46B8jgGxQPHQXkcA+VxDJTHMVBecR6DmzdvKp0CERHRI1dsi7TBwcEAgPj4eISEhMjt8fHxqFevnhyTcEdRzmq14saNG/Lrg4ODER8f7xST/fxeMdnb8zJmzBhERUXJz9PS0lCmTBkEBATA09Pzfrr60NntdkiShICAgGL3D7AiERgIVGqgdBZ3VeLH4DHAMVAex6B44Dgoj2OgPI6B8jgGyivOY6DX65VOgYiI6JErtkXasLAwBAcHY9u2bXJRNi0tDfv378fgwYMBAOHh4UhJScGhQ4fQsGFDAMD27dtht9vRuHFjOebDDz+ExWKBi4sLAGDr1q2oWrUqfHx85Jht27Zh2LBh8vG3bt2K8PDwfPPT6XTQ6XS52lUqVbH7Rw4ASJJUbHN7UnAMlMcxUB7HoHjgOCiPY6A8joHyOAbKK65jUNzyISIiehQU/e2Xnp6OI0eO4MiRIwAcNws7cuQILl++DEmSMGzYMHz66af48ccfcfz4cfTq1QuhoaHo0qULAKB69epo164dBgwYgAMHDmDv3r0YMmQI3njjDYSGhgIAunfvDq1Wi/79++PkyZNYs2YN5s6d6zQLdujQodi8eTNmzpyJ06dP4+OPP8bBgwcxZMiQR31KqLBM6cDF3cDpTUpnQkREREREREREdF8UnUl78OBBPPvs7Rs9ZRdOe/fuja+++gojR45ERkYGBg4ciJSUFDzzzDPYvHmz08dfVq1ahSFDhqB169ZQqVR4+eWX8Z///Efe7uXlhV9//RWRkZFo2LAh/P39MW7cOAwcOFCOadq0KVavXo2xY8figw8+QOXKlfH999+jVq1aj+AsUJFIjwei5wMuBqByBKAutpPEiYiIiIiIiIiInEhCCKF0EiVBWloavLy8kJqaWizXpE1ISEBgYGDJ/eiQ3Q6sHwCY04HnJwIBVZXOyMkTMQbFHMdAeRyD4oHjoDyOgfI4BsrjGCivOI9Bcf7bioiI6GEpXr+NiQpLpQKCazu+jz2qbC5ERERERERERET3gUVaKjlC6ji+skhLRERERERERESPERZpqeQIruv4mnQeMN1UNhciIiIiIiIiIqICYpGWSg43P8C7LAABXD2kdDZEREREREREREQFwiItlSxlGju+pl5RNg8iIiIiIiIiIqIC0iidAFGRqvw8UPE5wNVX6UyIiIiIiIiIiIgKhEVaKln0XkpnQEREREREREREdF+43AGVXFaz0hkQERERERERERHdE4u0VPKY0oHtnwIb/o+FWiIiIiIiIiIiKvZYpKWSR+sGpMUClkwg9qjS2RAREREREREREd0Vi7RU8kgSUOZpx/f//qFsLkRERERERERERPfAIi2VTGWbOL5eOcglD4iIiIiIiIiIqFhjkZZKJv8qgMEXsBqBuONKZ0NERERERERERJQvFmmpZJIkoGxjx/eXo5XNhYiIiIiIiIiI6C5YpKWSq2y44+vVg4DNomwuRERERERERERE+dAonQDR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VxqlEyBSgpuLm9Pzny/+jNM3TsNL54WeNXo++AGqvgCkXQNC6jlm19rtD75PIiIiIiIiIiIqkVikJQLwWtXXsPniZrQPay+3mWwm2Ow2uLq43v8OJQl4ekARZkhERERERERERCUVlzsgAuBv8MebNd6En8FPbvv5ws/45I9PcDTx6IMfIDMJ+nM/80ZiRERERERERESUC2fSEuXBarciJikGN803oVE94I+JxQjp17HQp8YDfkFA9Q5FkyQREREREREREZUInElLlAeNSoNRT49C/9r9UdOvptx+Nf0qMi2Z97czFz1EtY4AAOnwf4H4mKJMlYiIiIiIiIiIHnMs0hLlQ6PSoH5gffm5yWbComOLMGn/JPx789/721nVF2AOaQQIO/D7bCAjqYizJSIiIiIiIiKixxWLtEQFlGJMgUpSQSWpEGAIuL8XSxIya/cEfMoDpjRgz0zAan4oeRIRERERERER0eOFRVqiAgpyC8IHT3+AyHqR0Gv0cvuZG2cgCnJDMLUWovl7gNYduHEe+HMJbyRGREREREREREQs0hLdDxe1C4LdguXnMUkx+Pzw5/j88Oew2W333oFbAPDMMAASkPIPYMl6aLkSEREREREREdHj4QFvW0/0ZEszp0Gr1iLUPRRqlbpgLwquDbQcCQTVBDS6h5sgEREREREREREVeyzSEj2AJiFNUNm7Mty17nJbhiUDmZZMBLjeZd3aUg1ufy8EkHwR8K3wEDMlIiIiIiIiIqLiissdED0gP4MfdOrbM2LXnVmHyfsn48+4Pwu2g9Mbgc0fACe/5xq1RERERERERERPIBZpiYqQxWZBmjkNVrsV/gb/e79ACCDjOgABHP0G+OMLwGZ96HkSEREREREREVHxweUOiIqQi9oF79R/B5fSLiHMK0xuT8xMhMhrlqwkAU/1BTxDgUNfARd3AZnXgebvAVq3R5c4EREREREREREphjNpiYqYJElOBdo0cxpmHpqJyccmwy7scvu/N//FhZQLyLRkAlUigJajHDcSiz8JbB0PZCQpkT4RERERERERET1iLNISPWSX0y7DarfCoDZAJd3+kfv10q+YdWgW/oj9w9EQWg+W5z7CXhcgLuUCxK9jAatJoayJiIiIiIiIiOhR4XIHRA9ZLf9amPLMFFy4dsGp3dXFFT56HwS6BsptlzUqfOPlBY+kS5hc4/8c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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "fig, axes = plt.subplots(2, 1, figsize=(14, 10), sharex=True)\n", "\n", diff --git a/loss_tracking_utils.py b/loss_tracking_utils.py index a0dac85..fb1cbe2 100644 --- a/loss_tracking_utils.py +++ b/loss_tracking_utils.py @@ -104,6 +104,19 @@ def _ensure_columns(connection, table_name, columns): ) +def _sqlite_scalar(value): + """Convert torch/numpy scalar-like values to sqlite-friendly Python scalars.""" + if value is None: + return None + if isinstance(value, (str, bytes, int, float)): + return value + if isinstance(value, bool): + return int(value) + if hasattr(value, "item"): + return value.item() + return value + + def save_loss_history_sqlite(loss_history, db_path, run_metadata=None): """Save loss history values to a normalized SQLite database.""" os.makedirs(os.path.dirname(db_path), exist_ok=True) @@ -222,18 +235,30 @@ def save_loss_history_sqlite(loss_history, db_path, run_metadata=None): ( metadata["run_id"], epoch, - total_loss[epoch] if epoch < len(total_loss) else None, - wirelength_loss[epoch] - if epoch < len(wirelength_loss) - else None, - overlap_loss[epoch] if epoch < len(overlap_loss) else None, - overlap_count[epoch] if epoch < len(overlap_count) else None, - total_overlap_area[epoch] - if epoch < len(total_overlap_area) - else None, - max_overlap_area[epoch] - if epoch < len(max_overlap_area) - else None, + _sqlite_scalar( + total_loss[epoch] if epoch < len(total_loss) else None + ), + _sqlite_scalar( + wirelength_loss[epoch] + if epoch < len(wirelength_loss) + else None + ), + _sqlite_scalar( + overlap_loss[epoch] if epoch < len(overlap_loss) else None + ), + _sqlite_scalar( + overlap_count[epoch] if epoch < len(overlap_count) else None + ), + _sqlite_scalar( + total_overlap_area[epoch] + if epoch < len(total_overlap_area) + else None + ), + _sqlite_scalar( + max_overlap_area[epoch] + if epoch < len(max_overlap_area) + else None + ), ) ) From 5bba7c02b8655125de5fffafe08229c781f26a37 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 19 Apr 2026 23:10:51 -0700 Subject: [PATCH 09/48] enable all primary tests by default --- lab/loss_tracking.ipynb | 27 ++++++++++++++------------- test.py | 8 ++++---- 2 files changed, 18 insertions(+), 17 deletions(-) diff --git a/lab/loss_tracking.ipynb b/lab/loss_tracking.ipynb index c8bf994..3c06007 100644 --- a/lab/loss_tracking.ipynb +++ b/lab/loss_tracking.ipynb @@ -148,7 +148,7 @@ "metadata": {}, "outputs": [], "source": [ - "fig, axes = plt.subplots(2, 1, figsize=(14, 10), sharex=True)\n", + "fig, axes = plt.subplots(3, 1, figsize=(14, 14), sharex=True)\n", "\n", "for run_id, run_df in loss_df.groupby(\"run_id\", sort=True):\n", " run_label = f\"run {run_id}\"\n", @@ -174,22 +174,18 @@ " )\n", "\n", " if \"overlap_count\" in run_df.columns:\n", - " axes[1].plot(run_df[\"epoch\"], run_df[\"overlap_count\"], label=f\"count {run_label}\", alpha=0.8)\n", - " if \"total_overlap_area\" in run_df.columns:\n", " axes[1].plot(\n", " run_df[\"epoch\"],\n", - " run_df[\"total_overlap_area\"],\n", - " linestyle=\"--\",\n", - " label=f\"total area {run_label}\",\n", - " alpha=0.7,\n", + " run_df[\"overlap_count\"],\n", + " label=f\"count {run_label}\",\n", + " alpha=0.8,\n", " )\n", " if \"max_overlap_area\" in run_df.columns:\n", - " axes[1].plot(\n", + " axes[2].plot(\n", " run_df[\"epoch\"],\n", " run_df[\"max_overlap_area\"],\n", - " linestyle=\":\",\n", " label=f\"max area {run_label}\",\n", - " alpha=0.7,\n", + " alpha=0.8,\n", " )\n", "\n", "axes[0].set_ylabel(\"Loss\")\n", @@ -197,12 +193,17 @@ "axes[0].legend(loc=\"center left\", bbox_to_anchor=(1.02, 0.5))\n", "axes[0].grid(True, alpha=0.3)\n", "\n", - "axes[1].set_xlabel(\"Epoch\")\n", - "axes[1].set_ylabel(\"Overlap\")\n", - "axes[1].set_title(\"Overlap Metrics By Run\")\n", + "axes[1].set_ylabel(\"Overlap Count\")\n", + "axes[1].set_title(\"Overlap Count By Run\")\n", "axes[1].legend(loc=\"center left\", bbox_to_anchor=(1.02, 0.5))\n", "axes[1].grid(True, alpha=0.3)\n", "\n", + "axes[2].set_xlabel(\"Epoch\")\n", + "axes[2].set_ylabel(\"Max Overlap Area\")\n", + "axes[2].set_title(\"Max Overlap Area By Run\")\n", + "axes[2].legend(loc=\"center left\", bbox_to_anchor=(1.02, 0.5))\n", + "axes[2].grid(True, alpha=0.3)\n", + "\n", "plt.tight_layout()\n", "plt.show()\n" ] diff --git a/test.py b/test.py index 5a35d0e..143a61f 100644 --- a/test.py +++ b/test.py @@ -45,10 +45,10 @@ (5, 4, 75, 1005), (6, 5, 100, 1006), # Large designs - # (7, 5, 150, 1007), - # (8, 7, 150, 1008), - # (9, 8, 200, 1009), - # (10, 10, 2000, 1010), + (7, 5, 150, 1007), + (8, 7, 150, 1008), + (9, 8, 200, 1009), + (10, 10, 2000, 1010), # Realistic designs # (11, 10, 10000, 1011), # (12, 10, 100000, 1012), From 7b2ef631837085700288ce8ac6ce324478ae0665 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 19 Apr 2026 23:47:33 -0700 Subject: [PATCH 10/48] add wirelength loss plot --- lab/loss_tracking.ipynb | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/lab/loss_tracking.ipynb b/lab/loss_tracking.ipynb index 3c06007..27f36bc 100644 --- a/lab/loss_tracking.ipynb +++ b/lab/loss_tracking.ipynb @@ -148,7 +148,7 @@ "metadata": {}, "outputs": [], "source": [ - "fig, axes = plt.subplots(3, 1, figsize=(14, 14), sharex=True)\n", + "fig, axes = plt.subplots(4, 1, figsize=(14, 18), sharex=True)\n", "\n", "for run_id, run_df in loss_df.groupby(\"run_id\", sort=True):\n", " run_label = f\"run {run_id}\"\n", @@ -160,28 +160,27 @@ " axes[0].plot(run_df[\"epoch\"], run_df[\"total_loss\"], label=f\"total {run_label}\", alpha=0.8)\n", " axes[0].plot(\n", " run_df[\"epoch\"],\n", - " run_df[\"wirelength_loss\"],\n", - " linestyle=\"--\",\n", - " label=f\"wirelength {run_label}\",\n", - " alpha=0.7,\n", - " )\n", - " axes[0].plot(\n", - " run_df[\"epoch\"],\n", " run_df[\"overlap_loss\"],\n", " linestyle=\":\",\n", " label=f\"overlap {run_label}\",\n", " alpha=0.7,\n", " )\n", + " axes[1].plot(\n", + " run_df[\"epoch\"],\n", + " run_df[\"wirelength_loss\"],\n", + " label=f\"wirelength {run_label}\",\n", + " alpha=0.8,\n", + " )\n", "\n", " if \"overlap_count\" in run_df.columns:\n", - " axes[1].plot(\n", + " axes[2].plot(\n", " run_df[\"epoch\"],\n", " run_df[\"overlap_count\"],\n", " label=f\"count {run_label}\",\n", " alpha=0.8,\n", " )\n", " if \"max_overlap_area\" in run_df.columns:\n", - " axes[2].plot(\n", + " axes[3].plot(\n", " run_df[\"epoch\"],\n", " run_df[\"max_overlap_area\"],\n", " label=f\"max area {run_label}\",\n", @@ -189,21 +188,26 @@ " )\n", "\n", "axes[0].set_ylabel(\"Loss\")\n", - "axes[0].set_title(\"Loss History By Run\")\n", + "axes[0].set_title(\"Total And Overlap Loss By Run\")\n", "axes[0].legend(loc=\"center left\", bbox_to_anchor=(1.02, 0.5))\n", "axes[0].grid(True, alpha=0.3)\n", "\n", - "axes[1].set_ylabel(\"Overlap Count\")\n", - "axes[1].set_title(\"Overlap Count By Run\")\n", + "axes[1].set_ylabel(\"Wirelength Loss\")\n", + "axes[1].set_title(\"Wirelength Loss By Run\")\n", "axes[1].legend(loc=\"center left\", bbox_to_anchor=(1.02, 0.5))\n", "axes[1].grid(True, alpha=0.3)\n", "\n", - "axes[2].set_xlabel(\"Epoch\")\n", - "axes[2].set_ylabel(\"Max Overlap Area\")\n", - "axes[2].set_title(\"Max Overlap Area By Run\")\n", + "axes[2].set_ylabel(\"Overlap Count\")\n", + "axes[2].set_title(\"Overlap Count By Run\")\n", "axes[2].legend(loc=\"center left\", bbox_to_anchor=(1.02, 0.5))\n", "axes[2].grid(True, alpha=0.3)\n", "\n", + "axes[3].set_xlabel(\"Epoch\")\n", + "axes[3].set_ylabel(\"Max Overlap Area\")\n", + "axes[3].set_title(\"Max Overlap Area By Run\")\n", + "axes[3].legend(loc=\"center left\", bbox_to_anchor=(1.02, 0.5))\n", + "axes[3].grid(True, alpha=0.3)\n", + "\n", "plt.tight_layout()\n", "plt.show()\n" ] From 6ad318261549ebb496a00f7a40e02421d4b34b6c Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 20 Apr 2026 00:14:50 -0700 Subject: [PATCH 11/48] normalize_loss --- lab/loss_tracking.ipynb | 321 ++++++++++++++++++++++++++++++++++++++-- placement.py | 5 +- test.py | 2 +- 3 files changed, 314 insertions(+), 14 deletions(-) diff --git a/lab/loss_tracking.ipynb b/lab/loss_tracking.ipynb index 27f36bc..7618c37 100644 --- a/lab/loss_tracking.ipynb +++ b/lab/loss_tracking.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": null, + "execution_count": 52, "id": "imports-cell", "metadata": {}, "outputs": [], @@ -12,15 +12,145 @@ "import struct\n", "\n", "import matplotlib.pyplot as plt\n", + "import numpy as np\n", "import pandas as pd\n" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 53, "id": "load-loss-history-db", "metadata": {}, - "outputs": [], + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Loading latest database: ../loss_tracking/loss_tracking_20260419_224756_179141.sqlite3\n", + "Loaded 10 runs from /Users/vrajpandya/repo/intern_challenge/loss_tracking/loss_tracking_20260419_224756_179141.sqlite3\n" + ] + }, + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
test_idrun_countseedslatest_run_id
011[1001]20260419_224802_891940
121[1002]20260419_224809_330698
231[1003]20260419_224815_787143
341[1004]20260419_224823_465282
451[1005]20260419_224834_234140
561[1006]20260419_224847_672460
671[1007]20260419_224909_273646
781[1008]20260419_224931_591843
891[1009]20260419_225004_635847
9101[1010]20260419_233016_848412
\n", + "
" + ], + "text/plain": [ + " test_id run_count seeds latest_run_id\n", + "0 1 1 [1001] 20260419_224802_891940\n", + "1 2 1 [1002] 20260419_224809_330698\n", + "2 3 1 [1003] 20260419_224815_787143\n", + "3 4 1 [1004] 20260419_224823_465282\n", + "4 5 1 [1005] 20260419_224834_234140\n", + "5 6 1 [1006] 20260419_224847_672460\n", + "6 7 1 [1007] 20260419_224909_273646\n", + "7 8 1 [1008] 20260419_224931_591843\n", + "8 9 1 [1009] 20260419_225004_635847\n", + "9 10 1 [1010] 20260419_233016_848412" + ] + }, + "execution_count": 53, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "loss_tracking_dir = Path(\"../loss_tracking\")\n", "db_paths = sorted(loss_tracking_dir.glob(\"loss_tracking_*.sqlite3\"))\n", @@ -133,20 +263,186 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 54, "id": "list-individual-runs", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
test_idseedrun_idrunnerrun_labelsaved_at
01100120260419_224802_891940test.pytrain_placement2026-04-19T22:48:02
12100220260419_224809_330698test.pytrain_placement2026-04-19T22:48:09
23100320260419_224815_787143test.pytrain_placement2026-04-19T22:48:15
34100420260419_224823_465282test.pytrain_placement2026-04-19T22:48:23
45100520260419_224834_234140test.pytrain_placement2026-04-19T22:48:34
56100620260419_224847_672460test.pytrain_placement2026-04-19T22:48:47
67100720260419_224909_273646test.pytrain_placement2026-04-19T22:49:09
78100820260419_224931_591843test.pytrain_placement2026-04-19T22:49:31
89100920260419_225004_635847test.pytrain_placement2026-04-19T22:50:04
910101020260419_233016_848412test.pytrain_placement2026-04-19T23:30:16
\n", + "
" + ], + "text/plain": [ + " test_id seed run_id runner run_label \\\n", + "0 1 1001 20260419_224802_891940 test.py train_placement \n", + "1 2 1002 20260419_224809_330698 test.py train_placement \n", + "2 3 1003 20260419_224815_787143 test.py train_placement \n", + "3 4 1004 20260419_224823_465282 test.py train_placement \n", + "4 5 1005 20260419_224834_234140 test.py train_placement \n", + "5 6 1006 20260419_224847_672460 test.py train_placement \n", + "6 7 1007 20260419_224909_273646 test.py train_placement \n", + "7 8 1008 20260419_224931_591843 test.py train_placement \n", + "8 9 1009 20260419_225004_635847 test.py train_placement \n", + "9 10 1010 20260419_233016_848412 test.py train_placement \n", + "\n", + " saved_at \n", + "0 2026-04-19T22:48:02 \n", + "1 2026-04-19T22:48:09 \n", + "2 2026-04-19T22:48:15 \n", + "3 2026-04-19T22:48:23 \n", + "4 2026-04-19T22:48:34 \n", + "5 2026-04-19T22:48:47 \n", + "6 2026-04-19T22:49:09 \n", + "7 2026-04-19T22:49:31 \n", + "8 2026-04-19T22:50:04 \n", + "9 2026-04-19T23:30:16 " + ] + }, + "execution_count": 54, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ "available_runs\n" ] }, { "cell_type": "code", - "execution_count": null, + "execution_count": 55, "id": "plot-loss-history", "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "image/png": "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iVqWhTtVKGTnePcIsNqsFBaowPnVIDvrmXtGyD0t5p77uXq7/hyhVyfF1ZWQkJC4QURFRbFlyxYyMjLw8PDAx8eHp556iqlTp/LMM8/w9NNPc+jQISZMmMCoUaOcolJt+zVo0IDvv/+eP//8k+joaH744Qe2bdtWIzbipfpTXl7OypUradasGe7u7sTGxvLwww8zYMAA3n//fZo3b05+fj4rV66kadOm9OjRg+eee44777yT2NhYiouL+euvv5xenJGRkchkMpYsWcJdd92FVqt1etyey4wZM1Cr1TRv3hyAhQsX8t133/HNN99cA0vXpHPnzrz33nt8//33JCUlMXPmTFJSUpzHv1Leeecdxo8fz+zZs4mKinLGmPTw8MDDozqW/XPPPccbb7xBgwYNiI6OZty4cYSEhDjFr6ysLDp27EhkZCSTJ08mPz/f2f4Zz7uuXbvSokULBg8ezNSpU3E4HIwYMYI77rjD6U07fPhwPvnkE8aMGcPgwYNZtWoV8+bNc8Zy9fT0pHHjxi791+l0+Pr6upTn5OSQk5PD0aPVL5v37duHp6cnERERzpjCn3zyCe3atcPDw4Ply5czevRoJk2aVCcvxpSUFDp37kxycjKjRo1y2kyhUODv7w9UhzIYOHAgH374IW3atHHW0Wq1GAyGOo0lPj6emJgYnnjiCSZPnoyvry+LFy9m+fLlzpiyW7ZsYdu2bdx66614e3uTlpbGuHHjqF+/vlNYOzc2KsD27duRy+U1jn8hLjVHKioqePPNN7nnnnsIDg6moKCATz/9lKysLB588EGAGuFNzpxT9evXd77EgWpvZIvFQlFREWVlZezevRuAxMTEWvscEBCAm5ubS/moUaMYOHAgrVq1onXr1kydOpWKigoee+yxOo23NtLT0/nqq6+45557CAkJ4dChQxw5csQppI4fP567776biIgIHnjgAeRyOXv27CElJYU33niDrl27kpSURK9evXj33XeJjY3l1KlT/Pbbb9x33320atWKkSNHMmjQIFq1akX79u2ZNWsW+/fvv6Q399GjRykvLycnJweTyeS0WaNGjVCr1c5QEEOGDOGFF14gJSWFDz/8kClTpjjbGDlyJLfffjvvv/8+PXr0YM6cOWzfvt3pAX/GM7h3794EBQWRlpbGmDFjiImJITk5+Yrt+m/jhoqzOTk5hIeHA9UB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CxcuFE2bNhV6vV7ExcV5whcvXix69OghLBaLCAgIEF27dhWffvqpEEKIBQsWiG7duomAgADh6+srLr30UrF06VJP3g0bNoj27dsLk8kkavr5npycLHr37i1CQkKEyWQSTZs2FU8//fRpx9/MmTPF5Zdffso0cXFxYvr06VXC165dK9q1ayfMZrPo1auXmDdvngDEkSNHPGUHBgZ65VmwYEGNfRDC9fxwmd57vSrKUgjX80lMTBRGo1EkJCSImTNnesVXVwZQJd2rr74qGjVqJHx8fET37t3FmjVrvOKzs7PF7bffLvz8/ERAQIC49957RWFhYY3tr67PR44cqbYtFeU+d+5ckZCQIIxGo4iMjBRjxowReXne625N1FQ+IFasWOFpV01pzqQvDodDTJw4UTRp0kSYzWYRExMjHnroIZGbm+tJM2LECBEXFyeMRqMIDw8XV155pfjzzz9P2QdALFiwoFb9rc0Yeffdd0WbNm2Ej4+PCAgIEB07dhQffvjhKT8bKq8Rp6qr8jhy434W7nXEzY4dO8Rll10mTCaTaNiwoXjttddO28/LL7+8xnqEEOLll18WrVq1EhaLRYSEhIjrrrtOHD582BOflpYm7r77bs96m5CQIEaNGuW1Jnz77beeeRQcHCx69+4tfvzxR0/8hg0bRIcOHYTRaBSJiYli/vz51favIjWNtQkTJnjSlJaWioceekgEBwcLHx8fccMNN4i0tDSvco4ePSquuuoqYbFYRFhYmHjyySeFw1Gut3n99dc94zAkJET06dNHLF++/LRyPR31+RkrCVELpy8XmIvNcragoIDAwEDy8/PP+hbG84mqqh4T78rHCv4tbFtyjD2rd+EbFE3/Ea3xCz57R9y1RlU58ce7rNp9nB+LEsmyh9FS0vF04wiaDGuN7GOokPTsZOzMzSXjlcmoViv+D97HPHUzS5OXAtDApwFjEsfQMqTlee9aTRQVFWGz2QgNDUW128l8azqH0tJod/ddmMKbkbJsHydT01CEQqGphIg+zWh/SbcLYhF6LuPYXlrC9j9/oyArg77D70endz270kI7O1ec4Nhu14UoRrOODv1iiW8XWus+2dXyW7wVIXj1cBpdA325IiQA1BLS0uaRnvErQjiQkImIuJaGDe9EdxFaHv8X1oqLHU3GdY8m47pHk/GFoS7lbFNVMu1OVCGIs5R/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dGj/CVFRN6PT+VJamszBQ29oSloNDQ0NDQ0Njf8wjz76KJ9//jlTp05l//79LFy4kK5du573euryd/Xq1avp378/v/32G1u2bKFv374MHjyYbdu2edLMnTuXJ554ggkTJrB161Y6dOjAwIEDPYq91NRUUlNTmTp1Krt372bWrFksXryYkSNHetX11ltvMX78eJ599ln27NnD0qVLGThwoCe+oKCAAQMGEBcXx5YtW3jzzTeZOHEin376aZV2Hz16lKeeeopevXpViSsuLuayyy7j9ddfr7bPxcXFDBgwAEmSWL58OevWrcNutzN48GBU9fTf2/fv34+qqnzyySfs2bOH6dOn8/HHH/O///3Pk2b9+vW0b9+e+fPns3PnTu69917uvvtufv311zPqyxNPPMHixYv55ptv2LdvH4899hhjx45l4cKFVdK+/fbb1d4fcuutt5KWlub1GjhwIJdffjkNGjQ4bX8Bhg4dyrJly/jiiy9ISkriu+++o0WLcld4P/74o1f5u3fvRqfTccsttwBQUlLC1q1beeGFF9i6dSs//vgjSUlJDBkypNr6nnnmGaKjo6uNO928O3LkCNdccw19+/Zl+/btPPbYY9x3333Vbjr8FygpKWHQoEFe468yw4YNY8+ePSxZsoRff/2V1atXc//993viazP37HY7/fv35+jRo/zwww8kJSXx2Wef0bBhwzrt378KUY+MHj1aNGjQQHz88cdix44dYseOHeLjjz8WkZGRYvTo0fXZNC/y8/MFIPLz8+u7KUIIIRRFEWlpaUJRlPpuSp2iqqpY+8M/Yu7kTWLhu9uFrcRRl5UJsXmGECcPir2p+eKad1aJqyd+JWa88Yw4svxLUbA+ReyevEEsfWG1uG36avH+8n+EU1HrsDmusu1Ou/h4+8di6C9DxdBfhooPtn0g7Iq9zuqtiaKiIs94y/7yS5H8wGiR/9tvQgghFKtDFG/NEFlf7RHp724V6e9uFcfe3SB++GaGuGvBMDH0l6Fi2KJh4qs9X4lCW6GnzIthHKuKIg78tU789eNcj8xrIietSCyZsUfMnbxJzJ28SSyZsUfkphfXqp5Mm12M3n1E/JaZe8p6HI5CceLEbPH3ltvFxk1DxMZNQ8TOXWNFdvZaoapnLqeLQcb/dTQZ1z2ajOseTcYXBk3Odc/FJOO6+v1QWloq9u7dK0pL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rPyyfsgSCFVCkk/98V7diiRLEjrwKDsrq6gr/l1xSZMqyEYAdlXFrJPL03qlKssjVVOmO517uKoCCbA7HPgZjSBBoaJglFzPS5a8S5AqKLw99UkuJXqeU0FGwqTTYZJ1yGXzWZTllb0U5lRTVsX3p4qv2hb33zrZUrZxICHVUHaVv73eU56/hrjKSnGhOlBUKwZ92Ua3pKuU1/XQCguL8PcPQJIrllFJHlWU9u40FeKrTYN3WOX+eYo5gzK80lChHHdY5U0SqumLXOF9Tf09XZrKmwtlffPazHClUVWV7OxsQkPDXCdyvMqUK/S0Yhnlz7PmeiqmccWpqg0hVPR6v2radG5U3ry8mLiYviPX1e+HUx65dFhd/+tN5fNbcYLqdF1QqzPULq0kg954+rS6M7PzsdlsPP3008yZM4eCggIuueQSpk+fTpcuXVBVldjYWMaPH8+DDz7oybNt2zY6d+7MkSNHiIuLIy8vj6eeeoqff/4Zm83mKaNDB9clrBMnTuSnn35i7NixTJ48mWPHjqGqKn36eLs1+Prrr3nnnXdISkrC19eXK664grffftujGFi5ciV9+/bl119/5bnnnuPAgQMkJiby+eef07Zt22r7Fx8fz7Fjxzzv4+LiPIqCn3/+mUmTJrF3716io6O55557GD9+PHq9HiEEkyZNYsaMGWRkZBAaGsrNN9/Mu+++S58+fVi1apVXPTX9fL/00kvp378/L7/8cq2fSW3cGvTp04e2bdui1+v55ptvaNeuHTNnzqRx48Zs27aNxMREAPLy8ggODmbFihX06dPHI8OlS5cybtw49u7dS2JiIjNnzqRFixa1buObb77JRx995DlN+9FHHzF+/HjS09M9SuJnn32Wn376if3791dbhqIoBAcH8/7773P33XcDcNttt2EwGPj666+rzZOfn094eDizZ8/m5ptvBlzK41atWrFhwwYuvfRST9qPPvqIuXPn8uKLL3LllVeSm5tLUDWXHFceh26io6MZP368l9XfTTfdhMVi4ZtvvqmdoCqQlZVFgwYNWLVqFb179642zbx587jzzjspLi5GX+H+llP1ZerUqXz00UccOnTIk/69997j9ddf58SJE54wRVHo3bs3I0aMYM2aNeTl5Z3Sovz666+nsLCQZcuWnbZvTqeT+Ph4Jk2axMiRtXPVl5WVRcOGDfniiy+4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KIqUkpLiFHkqgvvR8Xdxd+m5U1foyxuJTpTs4aFSzhUPGUzHzofpuHxgenY+lUnHzvr9UJEnSZeWMWPGUKtWrSgmJobu3LlDgiDQzZs3ycXFhcaNG0cXLlygX375hapWrUqzZ88ustxHH31E7u7utG3bNoqOjqaZM2eSu7s7NWnSRC43YsQI6t+/f6HyHDhwgADQjh076M6dO5SZmUlERMOHD6eQkBDatGkTXb16lQ4fPkzz58+n33//nYikk+S3bdtGV69epWPHjlGbNm1o8ODBRER08+ZN4jiO1qxZQ4mJiZSenl6kTmbOnEmBgYFkdvA3SufOnSkyMrLQ9MJOXN+2bRtxHEfffPMNXbp0iWbNmkXu7u7UuXNnu7onTpxoV65///40YsSIQttbsGABqdVq2rhxI8XHx8sv234vWLCAPD096ddff6XTp09T//79KTQ0VB7DN2/epNq1a1P37t3p5s2bdvVYEQSBmjdvTp06daLjx4/Tv//+S23atKEePXrIea5evUouLi705ptv0oULF+jTTz8lhUJB27ZtK1KfefscHx9PJ06coC+//JIA0L59++jEiRN07949Oc/HH39Mx44do+joaPrkk09Ip9PRRx99VGg7tpw5c4Z8fHzoueees+trYmLud+/vv/+elEolffrpp3Z5ivqdUlBfvv76azp48CBdvnyZvv32W/L29qbJkyfb5enVqxc1a9aMDh8+TPv376c6derQ0KFD5fQ7d+7Q559/ThcuXKATJ07Q66+/Tlqtlg4fPuxQfx3tiyAIVKNGDZo6dWq+Oq5cuULz58+nf//9l65fv04HDhygfv36kbe3N92+fVvO179/f2rYsCEdOHCAzpw5Q3379qUGDRqQ0WgsULbIyEjy8PCwuxYbG0tubm40fvx4io6Opt9//518fX3pvffeK7KfwcHBtHv37kLTi5o34uLiyMfHh55++mk6cuQIXb58mbZt20YjR46U54YZM2ZQlSpVaM2aNXT58mU6duwYrVixgtasWUNERNevXye1Wk1Tpkyhixcv0vfff0/+/v4Fzge2ODLeixsjKSkp5OfnR88//zydPXuW1q9fTy4uLrRy5cp87T3++OM0ZMiQInVZkVTkZywzzjoAM84+etyXjjPvEUVvl14WcnJy6N9//6V//vnHCVKWnMx//6V7a9ZQ5vHjFS2KU8dx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00S3bt3ESy+9JIqKioSiKEIIIQYNGiQmT54cL/fqq6+KXr16iaSkJJGZmSlGjRolKisr4/mLFy8WgPjoo49E165dhclkEn379hUbNmxosX+FhYUCiL8KCwvjee+//77o0aOHMJlMolWrVuK+++6Lx1nTNDFt2jSRn58vjEajyM7OFpMmTYq3+9A6W/rv+3//+1+hqmrC9dbQ0CAURRELFixosc2LFy9OaGdzBg0aJCZMmCAmT54sUlNTxVlnnSV2794tALF27dp4ufr6egGIxYsXJ8Twiy++EL169RIWi0X0799fbN269bDn+6FHH31UtGrVKv7+ueeeE8nJySIUCsXTbr/9dtGhQ4cW64hGo8Jut4t///vf8bTLL79cXHXVVS0e09DQIAwGg5g7d248bcuWLQIQy5cvTyj73HPPiUGDBomFCxcKQNTX1zdb5w+vw4Oys7PFM888k5B28cUXi9GjR7fYvsOpqqoSgFi6dGmLZd5++21hNBoTvu+AmDdvXovH3HbbbaJLly4JaZdffrkYOnRo/H2fPn3EhAkT4u9jsZjIyckRDz/8cMJxa9euFbm5uaK8vPyI5z1UXV2dsFgs4osvvjiq8gfdcsst4vTTT4+/nzVrlnA6nYc9pkuXLmL69OkJaT179hR33XVXQtqx9KWqqkoYDAbx6quvHvbcY8aMEdOmTWsxPxQKiQkTJoisrCxhMplEQUGBeOihh+L5RxorhTj8uCSEENu2bRNnnHGGMJlMolOnTuLzzz8/ps+qubKapomsrCzx2GOPxdMaGhqEyWQSb7zxhhBCiM2bNwtArFy5Ml7m008/FYqiiNLSUiGEEKNGjRJ/+MMfEup+6qmnRF5eXsLPqmN1uJ+xJ9r/xMpZOPAXi8cff5x7772X7t27s27dOj777DMyMzNPdtMkSZIkSZIkSZJ+krlz5zJ37tyEBxtv2bKFuXPnsmrVqoSy7733HnPnzo2vrAPYvn07c+fObfI8jvnz5zN37tyEW6B37959zO277bbbePfdd/n3v//NmjVraNu2LUOHDqWurg5VVRk1ahRz5sxJOOb1119n4MCBFBYWAnDppZdSVVXFp59+yurVq+nZsydnn302dXV18WN27NjBu+++y3vvvce6deuabUskEuGBBx5g/fr1vP/+++zZs4drr722Sblbb72VJ554gpUrV5Kens6IESMSbo0+1MqVK4H/W3l48P2XX37JNddcw+TJk9m8eTMvvPACs2fP5sEHHwTg3XffZcaMGbzwwgts376d999/n65duwIHPqe8vDymT58eX3XXnFAohKIomEymeJrZbEZVVb766qtmjzkW//73vzEajXz99dct3tbdkrvuuosnnniCVatWodfrue66647p+MbGRlJSUuLvly9fzplnnonRaIynDR06lOLiYurr65utw+/3E4lE4vVomsbHH39M+/btGTp0KBkZGfTt2zfhFuzVq1cTiUQYMmRIPK1jx44UFBSwfPnyeNrmzZuZPn06r7766o/e6zoUCjW5pd5isfzoz+7gd/XQuDVXxuFwoNfrE9InTJhAWloaffr04ZVXXkEc8oii5cuXJ8QDDsT+YDzC4TCrV69OKKOqKkOGDEmImd/v58orr+TZZ5895m0mFyxYgKZplJaW0qlTJ/Ly8rjsssvYt29fi8fs2LGDzz77jEGDBiWke71eCgsLyc/P58ILL2TTpk0J+QMGDGD+/PmUlpYihGDx4sVs27aNc88990f35dVXX8VqtfKHP/zhmPr9Q0899RTz58/n7bffpri4mNdff52ioqJ4/pHGyiONS5qmcfHFF2M0GlmxYgXPP/88t99++09qMxz42VFRUZFwjTidTvr27Ru/RpYvX47L5aJ3797xMkOGDEFV1fjPp5a+M/v372+yAvrX4n9mchZg4sSJ7N27l1AoxIoVK+jbt+/JbpIkSZIkSZIkSdJvms/n45///CePPfYY5513Hp07d+all17CYrHw8ssvAwduY/3666/je35qmsabb77J6NGjAfjqq6/47rvvmDt3Lr1796Zdu3Y8/vjjuFwu3nnnnfi5wuEwr776Kj169Gj2NnOA6667jvPOO4/WrVvTr18/nnrqKT799NMmexpOmzaNc845h65du/Lvf/+byspK5s2b12yd6enpALhcLrKysuLv77//fu644w7GjBlD69atOeecc3jggQd44YUXACgpKSErK4shQ4ZQUFBAnz59uOGGG4ADk2s6nQ673U5WVlaLkz/9+vXDZrNx++234/f78fl8/OUvfyEWi7U4oXss2rVrx6OPPkqHDh3o0KHDMR374IMPMmjQIDp37swdd9zBN998k3D78uHs2LGDp59+mj/+8Y/xtIqKiiYLrA6+r6ioaLae22+/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AODmm2/GvffeiwULFqB9+/ZR91+wYAF69+4ddXwr6+DBgwCAhISE075vRGVeE0RERERERNWOICKiamv79u0CgHjmmWeEEEIEAgFhs9nEu+++K4QQokaNGuLVV18VQgjhcDiETqcTI0eO1O6/cuVKAUCsXLlSm9arVy8BQMybNy/qsd5//30hy7JYs2ZN1PR58+YJAGLdunXatPr164thw4Zpt5955hlhs9nE7t27o+77+OOPC51OJ/78808hhBAHDhwQAERSUpIoKCjQlvv0008FAPH5559r01q3bi3q1KkjnE6nNm3VqlUCgKhfv742LS8vTwAQEydOLHP8hg0bJgCIp59+Omp6+/btRYcOHcosf6JevXqJli1bVjg/NzdXGI1G0adPH6EoijZ9zpw5AoB4++23hRBCbNmyRQAQixcvrnBds2fPFgBEXl7eKbfrRPXr1xcAyly6d+8u8vPzo5YdMmSISEtLi9rezZs3CwBi/vz5J32c+fPnCwDi+++/F3l5eeLw4cPi448/FikpKcJkMonDhw9ry/bq1Uv06tWrzDqGDRsW9fydzmuCiIiIiIioumFbAyKiaqx58+ZISkrSeslu3boVJSUl6NatGwCgW7duWmXl+vXroSiK1m/2ZEwmE+64446oaYsXL0bz5s3RrFkz5Ofna5d//OMfAICVK1dWuL7FixfjyiuvREJCQtR9MzIyoCgKfvzxx6jlBw8eHFVlGTktfv/+/QCA7Oxs/P7777j99ttht9u15Xr16oXWrVufcv9ONGrUqKjbV155pfZYZ+P777+H3+/Hgw8+CFk+/it35MiRiI2NxZdffgkAiIuLAwB8++23cLvd5a4rPj4eAPDpp59GtYKorM6dO2P58uVYvnw5vvjiCzz33HPYvn07brjhhqi2GLfffjuys7Ojns8FCxbAYrHgpptuqtRjZWRkICUlBXXr1sXNN98Mm82Gzz77DHXq1Dnt7Y441WuCiIiIiIioOmI4S0RUjUmShG7dumm9ZdetW4fU1FQ0atQIQHQ4G7muTDhbu3ZtGI3GqGl79uzB9u3bkZKSEnVp0qQJACA3N7fC9e3ZswfffPNNmftmZGSUe9969epF3Y6EcoWFhQCAQ4cOAYC2n6WVN+1kzGaz1pe29ONFHutsRLazadOmUdONRiMuu+wybX56ejrGjBmDt956C8nJycjMzMSrr74a1W928ODB6N69O+666y7UqFEDt956KxYtWlTpoDY5ORkZGRnIyMhAv3798OSTT+Ktt97CTz/9hLfeektb7pprrkGtWrWwYMECAICqqvjvf/+LG2+8ETExMZV6rFdffRXLly/Hxx9/jH/+85/Iz8+HyWSq1H0rcqrXBBERERERUXXEnrNERNVcjx498Pnnn+P333/X+s1GdOvWDY8++iiysrKwdu1apKWl4bLLLjvlOi0WS5lpqqqidevWeOGFF8q9T926dStcn6qquOaaa/DYY4+VOz8S8EbodLpylxNCVPgYZ6qix7rQZs2aheHDh+PTTz/Fd999h9GjR2Pq1Kn43//+hzp16sBiseDHH3/EypUr8eWXX+Kbb77BRx99hH/84x/47rvvzmg/rr76agDAjz/+iPvvvx9A6Hj861//wptvvonXXnsN69atQ3Z2Nm677bZKr7dTp07o2LEjAKB///7o0aMH/vWvf2HXrl1apbMkSeU+nxUNxHYhXxNEREREREQXCsNZIqJqLlIJu3btWqxbtw4PPvigNq9Dhw4wmUxYtWoVNmzYgH/+859n/DgNGzbE1q1bcfXVV0OSpNO+r8vl0iplz1b9+vUBAHv37i0z78Rpp7ut51JkO3ft2hUVivv9fhw4cKDM8WjdujVat26Np556Cj/99BO6d++OefPm4dlnnwUAyLKMq6++GldffTVeeOEFTJkyBePGjcPKlSvP6NgGg0EAgMvlipp+++23Y9asWfj888/x9ddfIyUlBZmZmae9fiAUqk6dOhVXXXUV5syZg8cffxxAqPK1vJYEkWpiIiIiIiKivwO2NSAiquY6duwIs9mMBQsWICsrK6py1mQy4fLLL8err76KkpKSSrU0qMigQYOQlZWFN998s8w8j8eDkpKSk953/fr1+Pbbb8vMKyoq0kLCykpLS0OrVq3w3nvvRQWLq1evxu+//x61rNVq1R7nQsvIyIDRaMTLL78cVeH5//7f/0NxcTH69esHAHA4HGWOQevWrSHLMnw+HwCgoKCgzPrbtWsHANoyp+vzzz8HALRt2zZqeps2bdCmTRu89dZb+OSTT3DrrbdCrz/z73N79+6NTp064cUXX4TX6wUQCux37tyJvLw8bbmtW7dq7TeIiIiIiIj+Dlg5S0RUzRmNRlxxxRVYs2YNTCYTOnToEDW/W7dumDVrFoDK9ZutyL///W8sWrQIo0aNwsqVK9G9e3coioKdO3di0aJF+Pbbb7VT2U/06KOP4rPPPsN1112H4cOHo0OHDigpKcHvv/+Ojz/+GAcPHkRycvJpbc+UKVNw4403onv37rjjjjtQWFiIOXPmoFWrVlGBrcViQYsWLfDRRx+hSZMmSExMRKtWrdCqVaszPhal5eXlaZWtpaWnp2Po0KF44oknMHnyZPTt2xc33HADdu3ahddeew1XXHGF1ipgxYoVuO+++3DLLbegSZMmCAaDeP/996HT6bRBuJ5++mn8+OOP6NevH+rXr4/c3Fy89tprqFOnTqWe16ysLHzwwQcAQpW7W7duxeuvv47k5GStpUFpt99+Ox555BEAOK2WBhV59NFHccstt+Cdd97BqFGjcOedd+KFF15AZmYmRowYgdzcXMybNw8tW7aEw+E468cjIiIiIiKqDhjOEhFdAnr06IE1a9ZobQxK6969O2bNmoWYmJgyFZKnQ5ZlLFu2DLNnz8Z7772HpUuXwmq14rLLLsMDDzxQpm9ssYorpwABAABJREFUaVarFatXr8aUKVOwePFivPfee4iNjUWTJk0wefJkxMXFnfb2XH/99fjvf/+LSZMm4fHHH0fjxo3xzjvv4N1338X27dujln3rrbdw//3346GHHoLf78fEiRPPWTibm5uL8ePHl5l+9dVXY+jQoZg0aRJSUlIwZ84cPPTQQ0hMTMTdd9+NKVOmwGAwAAhVrmZmZuLzzz9HVlYWrFYr2rZti6+//hpdunQBANxwww04ePAg3n77beTn5yM5ORm9evWq9PH79ddf8e9//xtA6LlMTk7GwIED8cwzz6B27dpllh86dCjGjh2Lhg0bolOnTmdziAAAAwcORMOGDTFz5kyMHDkSzZs3x3vvvYcJEyZgzJgxaNGiBd5//30sXLgQq1atOuvHIyIiIiIiqg4kwZE0iIjoEtKuXTukpKRg+fLlVb0p1Vp+fj5q1aqFCRMmlBs+ExERERER0dljz1kiIqqWAoFAmT6tq1atwtatW9G7d++q2ahLyDvvvANFUbRqWyIiIiIiIjr3WDlLRETV0sGDB5GRkYHbbrsNaWlp2LlzJ+bNm4e4uDhs27YNSUlJVb2J1dKKFSuwY8cOjB8/HldddRWWLFlS1ZtERERERER0yWI4S0RE1VJxcTHuvvturFu3Dnl5ebDZbLj66qsxbdo0NGzYsKo3r9rq3bs3fvrpJ3Tv3h0ffPBBuf1oiYiIiIiI6NxgOEtERERERERERERUBdhzloiIiIiIiIiIiKgKMJwlIiIiIiIiIiIiqgL6qt6A6kBVVWRnZyMmJgaSJFX15hARERER0UVMCAGn04m0tDTIMuthiIiIqGIMZyshOzsbdevWrerNICIiIiKiauTw4cOoU6dOVW8GERERXcQYzlZCTEwMgNAfV7GxsVW8NaFK3ry8PKSkpPCb+POEx/j84zE+/3iMzz8e4/OPx/j84zG+MHicz7+L6Rg7HA7UrVtX+z+CiIiIqCIMZysh0sogNjb2oglnvV4vYmNjq/wPz0sVj/H5x2N8/vEYn388xucfj/H5x2N8YfA4n38X4zFmSzQiIiI6lYvjrxYiIiIiIiIiIiKivxmGs0RERERERERERERVgOEsERERERERERERURVgOEtERERERERERERUBRjOEhEREREREREREVUBhrNEREREREREREREVYDhLBEREREREREREVEVYDhLREREREREREREVAUYzhIRERERERERERFVAYazRERERERERERERFWA4SwRERERERERERFRFdBX9QYQEREREdHfjxACQQF4VRVeVYVPFcevFRWeE6epKrxK9DTPCdOG2nRIreodIyIiIjoNDGeJiIiIiKgMIQQCQhwPRsOhqS/yc/jaVyog9VQQpGrLRUJVJTRNhTiHGww4LZZztz4iIiKiC4DhLBERERFRNaYKAW848PSoaplrdzgIjdyOhKa+0tWnUaGq0ALYcxqenoQOEsw6CWZZDl8kmGQZJjk8TXd8mrnUNFOpaUYA8W7nBdleIiIionOF4SwRERER0QWkCBEVnGoBqiLgDoen7ki4WiZwFdrtUOgamn6+I1SDFB2MmmQpHI6GpllKBammcGgaNS18u3Sgqk2TZehl6ay3UVVV5PpKzsHeEhEREV04DGeJiIiIiCoQObU/FI6WrU51n1Cd6j4hUI0EqCWKAofXh2CWAwFxfqJUGRIsulDgadHJsMgyrOHryO1IqKpVn0YFrSdMk2WtmlUnnX14SkRERERlMZwlIiIiokuOKkJBaUk4IHWrKkqCSui69HQlFJxGfo5Up0ZCVbeiQjkXdakCCCoq9JIAwjmnXpK0ANUcCVJ1MiyypIWpFt3x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x4iJiWnwa3J9/X5wOBxkZGTQtGlT9beOEAKn9wzeNfWEWW+u0/n3+eefc8cdd3DixAn0ej07duygY8eOTJgwgRkzZgBw33334XA4eP/996vZGvgiUceNG8cLL7zA4cOHkWWZoqIinnjiCf73v//hdDrp0qULc+fO9YtkOzWC9a233uKll14iIyODpKQkHn74Yf7xj38AJyPoli9fzquvvsrmzZtp0aIFCxcupFu3bmobixYt4vnnn+fEiRMMGDCAnj178vzzz1NUVMSSJUu45557/I5/8eLFjBw5EkmSWLRoEV988QXffPMNjRo14qWXXmLIkCE1jlufPn1Yv3693zrfNfWHH37g6aef5ueffyYyMpKhQ4cyffp0rFYrAK+//jpz587lyJEj2Gw2evbsySeffMLIkSNZunSpX5u+sTgTvvN6zZo1XHfddTXWqYutQZ8+fbjiiiswGAy8//77XHnllSxevJimTZuyfft2NfCqqKiIsLAwvvvuO/r06UNqaip9+/ZlzZo1TJgwgbS0NDp06MDixYvViM66MHv2bBYsWMDBgwcBWLBgARMnTiQ3N1f9HfLUU0+xatWqWiMvvV4vYWFhzJ8/n7vuuguA2267DaPRyHvvvVfjNsXFxURFRfHBBx/wt7/9DVDE49atW7Np0yauueYate6CBQv473//y6RJk7juuuuqRZtWHcuaoqDj4+OZOHEiY8eOVdfdfPPNWCwW3n///boNVBWOHTtGdHQ069evp1evXjXW+fjjj7njjjsoLy/3E0ZPdyxz5sxhwYIFHDhwQK3/6quvMnPmTI4ePVptH7VFkl9oC5OOHTvSqVMn3n77bQB+/vlnrrrqKjIzM2nSpAkAu3btol27dvz+++80b968Whs7d+6kQ4cOfP/99/Ts2bPOxwKKDtapUydef/11pk2bdsZI919//ZX27duTnp5Os2bNaqxTF1uD2q4boHxvnDlzJm+++Sa5ubm0bNmS5557Tj2XAXbv3s348ePZsGEDVquV/v37M3fuXCIjIwEoLy/nwQcfZMWKFQQHB/PEE0/w2Wef1dnWoLbzffjw4ZSXl/P555+r66655ho6dOjAwoULEUIQHx/P448/zhNPPAEon8eYmBiWLFnCbbfdVuP+Pv30U2666SacTuc5z+Kt6f92TVw6vypq4eeff6Zv377qa58X7N13382S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ceMYNmwYP/74Y7W+jxo1inbt2pGVleW33ul0EhUVxbPPPsvcuXNrPO5nn32W999/n0WLFpGSksI333zD0KFD2bhxIx07djzjuK1fv56xY8dy1VVX4fF4eOaZZ+jfvz9paWlYrVays7PJzs5mzpw5tGnThsOHDzNmzBiys7P55JNP6nwsP/74I3fddRdz585l8ODBZGVlMWbMGEaPHs2KFSsACA8PZ+LEiaSkpGAymfj888+55557iI6OZsCAAX7trVy5kp9++on4+PgzHqOPupwjRqORu+66i06dOhEaGsrOnTsZPXo0sizz4osv+rV36NAhnnjiCXr27FltX+Xl5Vx77bXceuutjB49+rT9evnll/1mofvwer0MGjSI2NhYNm7cSE5ODnfddRdGo7FaX/4IlJeX0759e+69916GDRtWY51Zs2Yxb948li5dStOmTXnuuecYMGAAaWlp6udvxIgR5OTksHr1atxuN/fccw/3338/H3zwgV9ba9asoW3bturrixZ0KOqBe++9VyxYsKA+mm4QiouLBSCKi4sbuitCCCG8Xq/IyckRXq/3rLf1lDpFxZ7jouirDJH/xk6RO+8Xv+XEf/eKsp9zhbvQoW5TUlIiNm/eLJYsWSIWLlwoFi5cKBYtWiRSU1PF8ePHL+ShXTKczxg3GM5yIX5eLMQ7NwixsJeyLB8txOGfhJDlhu2b2ynEiYNCHFwvxC/vC5E6S8j/e0g43rpRyL6+nm55o48Q//m7EF8/I8TmN4XY940QObuEKM4S4nJ6jy4yl+V5fJmhjXH9o41x/aON8cVBG+f651Ia4/r6/WC320VaWpqw2+3qOlmWhdvpaZBFruN3zM8++0zYbDbh8XiEEEJs375dAGLChAlqnVGjRokRI0YIIYRYvHixsNlsatnkyZNF+/btxaJFi0RSUpKQJEkIIURhYaEYNWqUiIyMFMHBwaJv375ix44d1baryqJFi0RKSoowm82iVatW4rXXXlPLMjIyBCCWL18u+vTpIywWi2jXrp3YuHGjXxtvvvmmaNy4sbBYLOKmm24SL730ktrfxYsXC5SQF3VZvHixEEIIQCxatEjcdNNNwmKxiObNm4v//e9/tY5b7969q7XlY8OGDeLaa68VAQEBonHjxuKhhx4SZWVlavlrr70mmjdvLsxms4iOjhY333yzEEKIu+++u1qb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FStWdBMJtm3bRmxs8SLzyZMnWbNmDWvXrkWXt3DtI488gtlsZtOmTfj6+rJ48WLuvfdejh8/TkBAYW/2FStWMGHCBBYsWECTJk04ePAggwYNwmKx0L9/fyXf2LFjmT17NrVr12bs2LH07duXkydPotfr2blzJ0OGDGHmzJncf//9fP/9927iTJ8+fThy5AjffPMN33//PYDb9PnJkycTFxfHrFmzmD9/Pv369ePs2bNFtnft2rU0btyYZ599lkGDBinpp06domvXrkydOpWlS5dy+fJlhg0bxrBhw4iPj2ffvn0MHz6cjz76iFatWnHt2jVFMHz77bc5fvw4d911F1OmTAEgMLBwUIkkSXz99de8/PLLxMTEcPDgQcLDw3n11VfLxDP3hx9+wMfHh82bN5d63xsdn5Lgemjiyr97924aNmzoNiU8JiaG5557jt9++02JjC2IJElkZGS4Hbf169cTExPDI488wrZt26hSpQrPP/+8cuwSExNJSkqiU6dOyj6+vr60aNGC3bt3K+LspUuXGDRoEOvWrbvlmchWq7WQEGQ2m9m7dy92u91N9CwJ2dnZ2O32Is9TF2lpaWg0Gvz8/JS0m/WlWbNmaLVa5QFGZmYmH330EZ06dXJrY3x8PKdPn+bjjz9m6tSpN2yrzWbj448/ZtSoUSUSZpOTk9mzZw/9+vWjVatWnDp1ioiICN544w3atGlT5D7r16/n6tWrhR7EXE9aWhr16tVzS5syZQpBQUEMHDiwkJBfkutu//792O12t/MoIiKC6tWr31CcvRk3um8ATJ8+nY8//phFixZRu3ZtfvzxRx5//HECAwOJjo4mNTWVjh078swzzzB37lxycnKIjY2ld+/ebNmyBYAxY8awbds2vvzyS4KCgnjttdc4cOBAkQ8eSsPu3bsZNWqUW1pMTIwiepfk2jtw4ADnz59Hq9XSpEkTkpKSiIyMZNasWUr0bXlSLuJst27dGDNmDEePHqVhw4aFLvzingzeCjNnzmThwoUsX76cBg0asG/fPp566il8fX0ZPnw4ULqpAyr/21izszm9fw+/70goUpTV5S3Scf0idoW4dBS2zYSUM/Ln8HbQZuStL9DzH0KnN+Dp64ckSZhycvGweJVrdItrqp81S14wLTcrE2t2pvLZmp2F3WrFYbPisNtx2Kw4894dNhsOmw1JkhBCQnI4XKXmbbcCGeXW9nw0eWsp5Ucg6I1GOeLXaMJoNudZb8iitOSUkPIW8bE7nHj5+ORFAcsRwTqDAa1Oh1arQ6vXodXp0el0aPV6tFodGp1O/qzTK9u1Oi16gxGj2ewmGKPRoDcYMJg8VMFYRUVFRUXlNqA3GOkzeeZtq7sk+Pr6EhkZSUJCAs2bNychIYGRI0cyefJkMjMzSUtL4+TJk0RHRxdbhs1m48MPP1SExB07digLUJtMcvTu7NmzWbduHZ9//jnPPvtsoTImTpzInDlzePDBBwEIDw/n6NGjLF682E2cHT16NN26dQNkMbVBgwacPHmSiIgI5s+fz3333adEX9WpU4ddu3YpEVtmsxkvLy/0ej3BwYWDFwYMGEDfvn0BmDZtGvPmzWPv3r107dq1UN6AgAB0Oh3e3t5uZU2fPp1+/fopPrS1a9dm3rx5REdHs3DhQs6dO4fFYqF79+54e3sTGhqqCIy+vr4YjUY8PT2LbJ+L5ORkMjMzmTFjBlOnTmXmzJl88803PPjgg2zduvWGx6okWCwW3n///VuyM7jR8bkZV65c4fXXX3c7P5KSkgp5dbo+JyUlFVnO7NmzyczMpHfv3kra6dOnWbhwIaNGjeK1117j559/Zvjw4RiNRvr376+UVVRdrm1CCAYMGMCQIUNo3rw5Z86cuWmfiiImJob333+fnj170rRpU/bv38/777+P3W7nypUrVK5cuVTlxcbGEhIS4iZuFSQ3N5fY2Fj69u2rzBYoSV/Cw8P57rvv6N27N4MHD8bpdBIVFcXGjRuVPCdOnOCVV15h+/btJRLg161bR2pqKgMGDChR306fPg3IkfazZ88mMjKSDz/8kHvvvZcjR44UGdT3wQcfEBMTQ9WqxVvprFq1ip9//pnFixcraTt27OCDDz4oNuq3JNddUlISRqPRTQQH9/PoVrjRfcNqtTJt2jS+//57JUq9Ro0a7Nixg8WLFxMdHa089HJZgQAsXbqUatWqcfz4cUJCQvjggw/4+OOPuffeewFYvnz5DcewpBR3DbvGoyTXXsHz4M033yQsLIw5c+bQvn37Yh/4lSXlIs66ngy5nsQVRKPRuHmB/F127drFAw88oNycw8LC+OSTT9i7dy8g3xDeeustxo0bxwMPPADAhx9+SKVKlVi3bp3b1AGV/12unv+T47t3kHh4vyKwyaJsZ2rd3UIRZW+Kwwr7lsIvq2SfNLM/tBkBNdqXW9tV/h4ajUaOWDWa8PL/ezdUIUk47DZZxLVasVutOO22AuJunpjrdCI5HDidDpw2O06HHYdNzmfLzcaemyuLqx5mTGZPnA4Hdmsu1uwsctLTyclIzxN+lZq5fmaYSzi+YXvzrCPS/yHrCJ3egMHDA53BgMMqt98VXaw3GNC5oo0NcoSxPu/BnUarzRsPD4weZrRaHU6HHSFJaPVy5LErijj/b70SpazT69EZjbKwrM1fWE6j0eaNg4SQJJwOR55/cg5S3veQVqfD5GnBaPbE6CnXraKioqKi8m/C9b/OnU50dDQJCQm89NJLbN++nenTp7Nq1Sp27NjBtWvXCAkJueHMxtDQULcIz8OHD5OZmUmFChXc8uXk5HDq1KlC+2dlZXHq1CkGDhzoFoXqcDjcIlsBGjVqpPztErGSk5OJiIjg2LFj9OrVyy3/Pffc4zad9kYULNtiseDj43PzGXvXcfjwYX755RdWrFihpAkhkCSJxMREOnfuTGhoKDVq1KBr16507dqVXr16lSoK0xWs8sADDzBy5EgAIiMj2bVrF4sWLfrb4mzDhg1v2Wf2RsfnRqSnp9OtWzfq16/PpEmTbqlugJUrVzJ58mQl+s+FJEk0b95cEaeaNGnCkSNHWLRokZv4fyPmz59PRkYGr7766i23D2Q/1KSkJFq2bIkQgkqVKtG/f3/i4uJKHRgzY8YMPv30UxISEooMbrPb7fTu3RshBAsXLixVX5KSkhg0aBD9+/enb9++ZGRkMGHCBB5++GE2b96MJEk89thjTJ48mTp16pSovR988AH33XdfkQuTFYXrXB88eLASCdukSRN++OEHli5dyvTp093y//XXX3z77besWrWq2DK3bt3KU089xZIlS2jQoAEAGRkZPPHEEyxZskSZ5l9cW8rrursRN7pvnDx5kuzsbDp37uy2j81mUwTcw4cPKwvqXc+pU6fIycnBZrPRokULJT0gIIC6deuWW59Kg2vsx44dy0MPPQTIEdtVq1Zl9erVDB48uFzrLxdx9qZRh2VIq1ateO+99zh+/Dh16tTh8OHD7NixgzfffBMo+dSBglitVqzWfGEkPT0dkPv1T/atOOQoPnFHtOVOJ/VSEgc3fsmFE8eUNP/KIdRp2ZrwJs2LjZQtcowv/oJm+yxI+0v+XKszImqovDKyeixKzb/1PNblCYsmT0u51iMkCafTidNuR0hOJKczT4zUKUKvw2bFlpuLPTcHu9WKRqNRImI1Oi2SJHH18mW8PM2yJYJNFpad9jwB2elEcjrkSFunQ0lz5onLkuQskM+Jw2bFnpOD0+lwWxxOSLJy7LDbcdjt7h3JyirXcSprjB4eGM2eGDzkSGCdTicvQJe3MJ1Gq0U4ZesMIQQajYYcq5U/fX3zRGe9HIms16N1Ccp6ebV2jUajHBslclmnkxewy0vTaLVKuiuy2WDyQKv774rG/9Z7xb8JdYz/GdRxLn/upDG+E9pwp9G+fXuWLl3K4cOHMRgMRERE0L59exISEkhJSbmp6ODyUnWRmZlJ5cqVi/RPvD6izJUfZL/YguIAoNgkuCg489P10Lesjun1s0o1Gk2py87MzGTw4MHKTNGCVK9eHaPRyIEDB0hISOC7775jwoQJTJo0iZ9//rnIsSmKihUrotfrqV+/vlt6vXr1bsmz9HquP56Qv2hwQezX/2/JrR2fjIwMunbtire3N1988YVbGcHBwUpwlwvXglPXRxd/+umnPPPMM6xevbpQFGnlypWLHC/Xol2usi5duuQWuXrp0iVlWveWLVvYvXu3Eg3uonnz5vTr16+QX3BxmM1mli5dyuLFi5X63nvvPby9vYu0sSiO2bNnM2PGDL7//ns3UdyFS5g9e/YsW7ZscfPYLklf3nnnHXx9fYmLi1O2f/zxx1SrVo09e/YQERHBvn37OHjwIMOGDQPy7/V6vZ7vvvuOjh07KvuePXuW77//nrVr15a4j65jUdSxO3fuXKH88fHxVKhQodgZ4du2baNHjx7MnTvXzZ/31KlTnDlzxm1BNtd5q9frOXbsGNWqVbvpdRccHIzNZiM1NbWQhcSNouFvhre3d7H3Ddf98+uvv6ZKlSpu+7mOb2ZmJj169GDmzMIzOSpXrszJkydvuW03Izg4uNAicQXHoyTXXlHngclkokaNGkWeB2VNuYizBcnNzS1X64BXXnmF9PR0IiIiZN9Kp5M33niDfv36ASULX76e6dOnM3ny5ELply9fJve61ehvB5IkkZaWhhDiti92cKciJIkzB37m+PYtSE4HGo2G4IgGhEY2xy+kKhqNhqvXUord322MJTueRz7CfEqeWiF5BJDZdAj2ys0h3QrppXvSrSKjnse3gPW6SFmdAY3FgNHiTVFxB5IkYdYa8PL1LdcxdjocecKvDYfViuRwoDPK//C6IoeddhtOu11+OeR3yelQxF2n3SZHH1utshCtN4BWI4vErkhkh73wZ6dTSb85GgweHuhNJiVCVpKc2HNzlEhfR6ad7MxSWFUIcDid6HU6d//jMkaj1aHRaGTrCI38Q8QVGeyyl3Btd0UQ64wm2frCZFLEZb3JA53BKAvredHDOqNRiUp2jYtGp0NvkO0rXMfL6XAg2e1yRLjdjlanx+jpicnTE53BKLdHk/8jKb9NunzvZYMRyemQLUUyMxAIRczWG03oTSb0RhNavd7tx5Z6ryhf1DH+Z1DHufy5k8Y4I+OfsD36d+HynZ07d64ixLZv354ZM2aQkpLCSy+9VKrymjZtSlJSEnq9vsjFrK6nUqVKhISEcPr0aeW34q1Qt25dfv75Z7e06z8bjcYymy1aVFlNmzbl6NGj1KpVq9j99Ho9nTp1olOnTkycOBE/Pz+2bNnCgw8+WKL2GY1G7r77bo4dO+aWfvz4cUJDQ2+9QzcgMDCQixcvKp9PnDhBdnb23y43PT2dmJgYTCYT69evL6RPREVF8cYbbygLCgJs3rwZHx8fN6Hmk08+4emnn+bTTz9VZu4WpHXr1jccr/DwcIKDg/nhhx8UQSg9PZ09e/bw3HPPATBv3jw3T9ULFy4QExPDZ599VuihQkkwGAzKtPFPP/2U7t27l/j+GBcXxxtvvMG3335L8+bNC213CbMnTpxg69athaLYS9KX7OzsQu1xPSyRJAkfHx9+/fVXt+3vvvsuW7Zs4fPPPyc8PNxtW3x8PEFBQUUen+IICwsjJCSkyGN33333uaUJIYiPj+fJJ58s0rc3ISGB7t27M3PmzELWKhEREYX6Mm7cODIyMnj77bepVq1aia67Zs2aYTAY+OGHH5QIz2PHjnHu3LlSLYxXFMXdNzp37ozJZOLcuXPFPkhr2rQpa9asISwsrEj7iZo1a2IwGNizZ4+yYFxKSgrHjx//2xHBUVFR/PDDD4rVC8jXsGs8SnLtNWvWDJPJxLFjxxSvYbvdzpkzZ8rtnleQchFnnU4n06ZNY9GiRVy6dInjx49To0YNxo8fT1hYWJmufLZq1SpWrFjBypUradCgAYcOHWLEiBGEhISUeOrA9bz66qtuZsLp6elUq1aNwMDAMl1t9VaRJAmNRkNgYOBt/8fzTiTz2lV2r1lFcuJptBoNVes35O77H8IroMLNd85DGWOuotsxXY6W1RsQdbuhazEYf5N3Ofbgv4F6Hpc//6UxFkKAEIrXrhzNK9tByIKlNl/cLAJJcmLLzsGWk634EMvewnKUsj1vkTqByBM/5XIkp5O01BQ8Pcx50ccOHHZ7nnjsUMTj/PZJSE4nwunMi0yW/YGFK0LZtV2S/3ZFJRfoKAjkviE/aS9+LeR/rzCg0+sxWSxotToEApvVhtFkLGBZoVH8lnV6gywgOxyKiAxC8WQ2mFyL9uX7LbuQj28uOelpit2FstCfh4eyn8HDA4PRhD5v4T6TxaLUVzAi2rUIoGtxQK1OB3lR1q4jpdHKiwUaPDzQ3+J0Theu80ou99av8f/SveJ2oo5z+XMnjbG6rkVh/P39adSoEStWrGDBggUAtGvXjt69e2O320v947xTp05ERUXRs2dP4uLiqFOnDhcuXODrr7+mV69eRYpJkydPZvjw4fj6+tK1a1esViv79u0jJSWl0GIyxfHCCy/Qrl073nzzTXr06MGWLVvYtGmT28JDYWFhJCYmcujQIapWrYq3t3eh6MGSEhYWxo8//sijjz6KyWSiYsWKxMbG0rJlS4YNG8YzzzyDxWLh6NGjbN68mQULFrBhwwZOnz5Nu3bt8Pf3Z+PGjUiSpEwfDgsLY8+ePZw5cwYvLy8CAgKKvGbGjBlDnz59aNeuHR06dOCbb77hq6++uuFq73+Hjh07smDBAqKionA6ncTGxpZ64arrSU9Pp0uXLmRnZ/Pxxx+Tnp6uzIwNDAxEp9PRpUsX6tevzxNPPEFcXBxJSUmMGzeOoUOHKsdt5cqV9O/fn7fffpsWLVoogV5ms1mxxRg5ciStWrVi2rRp9O7dm7179/Lee+/x3nvvAfL/LyNGjGDq1KnUrl1bWQ8nJCREWezJJVq5cE0Rr1mzpps359GjR7HZbFy7do2MjAzFw9QlPB0/fpy9e/fSokULUlJSePPNNzly5EiJI29nzpzJhAkTWLlyJWFhYUp/vby88PLywm638/DDD3PgwAE2bNiA0+lU8gQEBGA0GkvUl27dujF37lymTJmi2Bq89tprit+pVqsttBhTUFAQHh4ehdIlSSI+Pp7+/fuXeHE4kI/LmDFjmDhxIo0bNyYyMpLly5fzxx9/8Pnnn7vl3bJlC4mJiTzzzDOFytm6dSvdu3fnxRdf5KGHHlLGw2g0EhAQUGSbXZGvBdNvdt35+voycOBARo0aRUBAAD4+PrzwwgtERUXd8mJgwA3vG97e3owePZqRI0ciSRJt2rQhLS2NnTt34uPjQ//+/Rk6dChLliyhb9++vPzyywQEBHDy5Ek+/fRT3n//fby8vBg4cCBjxoyhQoUKBAUFMXbs2BJ9X7vO78zMTC5fvsyhQ4cwGo3Kw5MXX3yR6Oho5syZQ7du3fj000/Zt29fqa49Hx8fhgwZwsSJE6lWrRqhoaHMmjULkBefLG/KRZx94403WL58OXFxcW5+PnfddRdvvfVWmYqzY8aM4ZVXXlHsCRo2bMjZs2eZPn06/fv3L1H48vWYTKYivzy1eT/w7wTkH4N3TntuN0IILp9N5Nju7Zw7chghSRhMRpr9X09q3RNVolUa3ZCceP6+Gt3JL9AICSwVIToWTbV7yqcD/1HU87j8+a+Nse4Wv9a0Wi16HwOepXwAJ0mSEmVRHmMsR/bK3saSJClCnxASiDw/Xde7JBRRV3I4sOfZUNhycxWvY1tODnZrLlqdLBC6FsyTPYytitjndMgis5CceXYNBnR6A3qjIc9eQxZEczMzsGZlYXd5JLuEyDzB0CU2y0JmfuS33mjC09c3z19Y3ma3WbHnyqK45HSQk7doo8s72f4PeSf/k+j0BoyenhiMJjQ6nXIOaTSafEuRAvYiQpIUUV/kifku0Ver16PP83LWGYx5ArEcraw3GvKio40IIbBbc5WIcTlK2ojVbsfL21u25FDsUWQh2xX5rtHqClh2yEK0S5BW0vR6OeLaZseet3Ciw2rF6XAo55HOYMBgMmHytODh5Y2Hl/zA02GzKv3U6vWyF7VRFsg1Wo28WKPdrnhGF8S1SKLBZFKmxRa8PpRrx/XgRhJyhHme9cg/taDhf+2efDu4U8b4dtd/pxIdHc2hQ4do3749IIs49evX59KlS6X2HdRoNGzcuJGxY8fy1FNPcfnyZYKDg2nXrl2hWZMunnnmGTw9PZk1axZjxozBYrHQsGFDt2irm9G6dWsWLVrE5MmTGTduHDExMYwcOVIRnAEeeugh1q5dS4cOHUhNTVVWor8VpkyZwuDBg6lZsyZWq/xd3ahRI7Zt28bYsWNp27YtQghq1qxJnz59AFnwWbt2LZMmTSI3N5fatWvzySefKN6Xo0ePpn///tSvX5+cnBwSExOLjD7u1asXixYtYvr06QwfPpy6deuyZs2aYlew/7vMmTOHp556irZt2xISEsLbb7/N/v37/1aZBw4cYM+ePQCFIo1d/dbpdGzYsIHnnnuOqKgoLBYL/fv3d1tD57333sPhcDB06FCGDh2qpPfv359ly5YBcPfdd/PFF1/w6quvMmXKFMLDw3nrrbfcIrVffvllsrKyePbZZ0lNTaVNmzZ88803pX6g83//93+cPXtW+ezy/XTZQjidTubMmcOxY8cwGAx06NCBXbt2lSjKHGDhwoXYbDYefvhht/SJEycyadIkzp8/z/r16wEK6Spbt25VrvGb0bFjR1auXElcXBxxcXF4enoSFRXFN998g9lsLlEZLr7//nvOnTvH008/Xar9AEaMGEFubi4jR47k2rVrNG7cmM2bN1OzZk23fB988AGtWrUq0t94+fLlZGdnM336dDefWpffdkkpyXU3d+5ctFotDz30EFarlZiYGN59991S97sgN7tvvP766wQGBjJ9+nROnz6Nn58fTZs25bXXXgMgJCSEnTt3EhsbS5cuXbBarYSGhtK1a1flO3HWrFmK/YG3tzcvvfQSaWlpN22b6/wG2L9/PytXriQ0NFRZZK5Vq1asXLmScePG8dprr1G7dm3WrVvnJnqX5NqbNWsWer2eJ554gpycHFq0aMGWLVvw9/f/W2NbEjTielOXMqBWrVosXryYe++9F29vbw4fPkyNGjX4448/iIqKIiWl+OnkpaVChQpMnTpVCUUG2ZYgPj6e48ePI4QgJCSE0aNHK1Nl0tPTCQoKYtmyZSVaECw9PR1fX1/S0tLumMjZ8hQD/k04bDYSD+/n+O4dpFw8r6QH16pLi16P4B1QtNH2DUn9E7H1DRwXfkGvN6Cp2QHajAKP23/s/5dQz+PyRx3j8kcd45LjWlDPZWNwozzWrCxyszLzxDSJq9euUSEgIF9AyxMYbTk5OB326xaLkyNs7NZcZeE+e55A6Miz0wD5R73OYMRgMmH28cHk6YVWp1WiaZV9rVblsy03B2t2Frbs7DyRUhaMXRHQLrsN2RPahiQ50WjyorbzBENXpHQ5/Pt1y7gEcP3/oABeUrR6PXq9LDK7EJKUJ4jL766HIto8AdslVMv+0Hq0Wm2e0KtDp9eh1enR6rR5vtJyxH1WVhaWvAV5hCIYS3nnfp4nuMOhPNiAfOuSgg8/FE9rg77AwxOj8i5HjHug0enkPuSJ3q6/pbwHLwYPDwweZoweZoweHorXOYgCEeQeCCHJi1DmeW2jkcVyW24OQpLQaLXKLAXX7AJXn12zBlwoViwUjPjWoNFqcPnDaLQaNLgsW3B7CCWXQV4Z+fYnsle7A6vQUKV69dt+Ty6v3w+5ubkkJiYSHh6uRufeQQwaNIg//viD7du33+6m3HbOnDlDeHj4HfU9p6KiAsuWLWPZsmXlFvmuUjQl/d4ul8jZ8+fPF+l/I0lSkYbef4cePXrwxhtvUL16dRo0aMDBgwd58803laclJQlfVvn3kZOZwbGdP3J8z05sObIPkU5vIDyyGXWi2hIQUuUmJRSBEPD7etj9LjhyEXoLosMYNLU785/9taqioqJSRmi0WgymGwsJrjwGk4diRSNJEpKHJxX/hwRwIQQOm5XcrEzsubnYc3NlSw6RvzCEVldgcThl4TidW7omL8LVJWrLkaV57zab7OXsSstbEFCj0WD0MCuWDZLkxG61cvXKZby9vEHki3fCmbfghtGITi9HWjvzIlddQrfiR+yUrTycDjtCkmThO88iQm80odPrle0uUc+alUluZia5mRmg0WAwmdDq9HKUrMMhR3RbrTgd8v+OGq02L9JVR57Bcd6ASthtthJ6TxeN5HBgK+H+ku3WfCRVEbz8EQIiH3iEKtdNpVVRKWtmz55N586dsVgsbNq0ieXLl//tqDUVFRUVlf8u5SLO1q9fn+3btxcyzf3888/dwpHLgvnz5zN+/Hief/55kpOTCQkJYfDgwUyYMEHJU1ZTB1RuP9bsbH794RuO792l/Aiz+AdQN6otNZu1wJQXjVL6gjNhy1Q4t1v+HNKE1AbPUDGsvirMqqioqKiUKRqNRhGh7wQkScJyB0eAC0lS/J5vhEvQla0e5EhM1+J5rqjMghGZQkh5CxU6Cix8lxdEkLefNi8iVKPRoNXp5OhnpzNPjHYi5fkdF7SbcDodiu2E8neevUd6ejq+fn5KmfkvLTqjbEPhEuRd/RUIV5eUSOyCQrfjusUW5chtOeJbcjplIV+TH8kqf86PfLXn5irvWp28gJ9Go1Gixu25uWi0WvRGY/5K6kKgMxgwepjR6nRy5KrLN1uSEJJTidIlz2ZAjooV+VYT4BYNLAp+xuWpLFtTaDSyX3OhcyMvb/5x0rr5SquolBd79+4lLi6OjIwMatSowbx584r0oFRRuVNx+b8WxaZNm2jbtu0/2JryZcWKFQwePLjIbaGhofz222//cItUVApTLuLshAkT6N+/P+fPn0eSJNauXcuxY8f48MMP2bBhQ5nW5e3tzVtvvcVbb71VbB6NRsOUKVPcPGNU/l1ITicn9u7i8OZNSqRsharVaRB9L9XqN/x7XnEZl2DTy5ByBnRGuOdZRINeSJevlE3jVVRUVFRUVG4ZjVZLSR6TujxvS1yuRofWpMNwa2v0lBrVBqX8cY2xikp5s2rVqtvdhDsWPz8/Jk6ceLuboXITXAssFUWVKrcwC/UO5v7776dFixZFbvu7C879m4iMjLxl72uV8qdcxNkHHniAr776iilTpmCxWJgwYQJNmzblq6++onPnzuVRpcr/MJfPneGnNZ+SliyvduhbqTLNu/UkuFad0i/0dT1XTsCmWMi+Ki/61XUGVKwNBbzRVFRUVFRUVFRUVFRUVG6On58fkyZNut3NULkJRdlQ/q/i7e2Nt7f37W7GbScyMrLQ4m0qdw7lIs4CtG3bls2bN5dX8Sr/AezWXA5/t5E/dm0HBCZPTxp3/j9q3RN106mNJeL8fvh2HNizIaAG3DcTvIL+frkqKioqKioqKioqKioqKioqKioloNzEWRWVv8Pls4ns+OwjslKuAVCj6d0069YTk6elbCo4nSB7zDrtENIEukwFU/G+OyoqKioqKioqKioqKioqKioqKmVNmYmz/v7+JZ5ifu3atbKqVuV/DCFJHN2+lUPffY2QJCx+/rTo1ZuQOvXKrpLf1sHOt+QlfcPbQcfxoDeWXfkqKioqKioqKioqKioqKioqKioloMzE2RstyKWiUhKs2VnsWrWC88eOAhDaqAkte/XB4FFGq1kLAfuXyS+Aej2gzShQF+VQUVFRUVFRUVFRUVFRUVFRUbkNlJk4279//7IqSuU/yOWziWxfuYzs9DS0ej13d3+QWvdE/f0Fv1w47fDjbDj+jfy5WX9o9hSUVfkqKioqKioqKioqKioqKioqKiqlpNxCBk+dOsW4cePo27cvycnJAGzatInffvutvKpU+RciJInftv3Ad4vnkZ2ehneFQLo+N5LaLVqVnTBrzYBNL8vCrEYLbUdB86dVYVZFRUVFRUVFRUXlDmTZsmX4+fn97XImTZp0R61OrtFoWLdu3e1uRrmSkJBAWFjY7W6GiorKdSxbtoz27dvf7mYUon379owYMeJ2N+O2Uy7i7LZt22jYsCF79uxh7dq1ZGZmAnD48GEmTpxYHlWq/AvJzcxk6/IlHPzmK4QQhDVuyv+98BIBIVXKrpKMJPhyGJw/AAZP6DoD6j9QduWrqKioqKioqKioqJQpffr04fjx47e7GbdMWYrCYWFhZW4hWFIxRKPRFPmaNWtWmbanPDlz5gwDBw4kPDwcs9lMzZo1mThxIjabzS3fL7/8Qtu2bfHw8KBatWrExcW5bV+yZAlt27bF398ff39/OnXqxN69ewvV9/vvv3P//ffj6+uLxWLh7rvv5ty5c8r23Nxchg4dSoUKFfDy8uKhhx7i0qVLRbb96tWrVK1aFY1GQ2pqqpJ+8eJFHnvsMerUqYNWqy3yWNrtdqZMmULNmjXx8PCgcePGfPPNNyUet+nTp3P33Xfj7e1NUFAQPXv25NixY8r2a9eu8cILL1C3bl3MZjPVq1dn+PDhpKWllaovAO+88w716tXDbDZTt25dPvzww0L7r169moiICDw8PGjYsCEbN250237p0iUGDBhASEgInp6edO3alRMnTpSoryXpy7Jly4q9HlzBiDt27KB169ZUqFABs9lMREQEc+fOLVTf+fPnefzxx5V8DRs2ZN++fUW2bciQIWg0miLvAV9//TUtWrTAbDbj7+9Pz549S9TffxslOd/h5ueIEIIJEyZQuXJlzGYznTp1cjtHEhISij3GP//8c3l2ESgncfaVV15h6tSpbN68GaMxf6Gljh078tNPP5VHlSr/MpJOneDreXFcOP47Wr2eFr1607rPExhMZeQvC5D8B3wxBFLOgKUi3D8fqrcou/JVVFRUVFRUVFRUVMocs9lMUFBQsduvF9ZUyoeLFy+6vZYuXYpGo+Ghhx4q03rK83j+8ccfSJLE4sWL+e2335g7dy6LFi3itddeU/Kkp6fTpUsXQkND2b9/P7NmzWLSpEm89957Sp6EhAT69u3L1q1b2b17N9WqVaNLly6cP39eyXPq1CnatGlDREQECQkJ/PLLL4wfPx6PAmuojBw5kq+++orVq1ezbds2Lly4wIMPPlhk2wcOHEijRo0KpVutVgIDAxk3bhyNGzcuct9x48axePFi5s+fz9GjRxkyZAi9evXi4MGDJRq3bdu2MXToUH766Sc2b96M3W6nS5cuZGVlAXDhwgUuXLjA7NmzOXLkCMuWLeObb75h4MCBperLwoULefXVV5k0aRK//fYbkydPZujQoXz11VdKnl27dtG3b18GDhzIwYMH6dmzJz179uTIkSOALLr17NmT06dP8+WXX3Lw4EFCQ0Pp1KmT0t4bUZK+9OnTp9D1EBMTQ3R0tHKvslgsDBs2jB9//JHff/+dcePGMW7cOLfzKCUlhdatW2MwGNi0aRNHjx5lzpw5+Pv7F2rXF198wU8//URISEihbWvWrOGJJ57gqaee4vDhw+zcuZPHHnvspn39N1KS8/1m5whAXFwc8+bNY9GiRezZsweLxUJMTAy5ubkAtGrVqtAxfuaZZwgPD6d58+bl31FRDlgsFnH69GkhhBBeXl7i1KlTQgghEhMThclkKo8qy5W0tDQBiLS0tNvdFCGEEE6nU1y8eFE4nc7b3ZRSIzmd4tB3G8VHr4wQH73yolj/5nSRcvFC2VeUuEOI97sIsaidEKufEiIjuVS7/5vH+N+COsbljzrG5Y86xuWPOsbljzrG/wzqOJc/d9IYl9fvh5ycHHH06FGRk5OjpEmSJCSb4/a8JKlE7f7qq6+Er6+vcDgcQgghDh48KAARGxur5Bk4cKDo16+fEEKI+Ph44evrq2ybOHGiaNy4sViyZIkICwsTGo1GCCFESkqKGDhwoKhYsaLw9vYWHTp0EIcOHSq0X0GWLFkiIiIihMlkEnXr1hXvvPOOsi0xMVEAYs2aNaJ9+/bCbDaLRo0aiV27drmV8d5774mqVasKs9ksevbsKebMmaO0Nz4+XgBur/j4eCGEEIBYsmSJ6NmzpzCbzaJWrVriyy+/LHbcoqOjC5XlYvv27aJNmzbCw8NDVK1aVbzwwgsiMzNT2f7OO++IWrVqCZPJJIKCgsRDDz0khBCif//+hcpMTEwstg0FeeCBB0THjh1vmGfr1q0iNDT0hnmio6PF0KFDxYsvvigqVKgg2rdvr4z9wYMHlXwpKSkCEFu3blXKBsT3338vmjVrJsxms4iKihJ//PFHidrvIi4uToSHhyuf3333XeHv7y+sVquSFhsbK+rWrVtsGQ6HQ3h7e4vly5craX369BGPP/54sfukpqYKg8EgVq9eraT9/vvvAhC7d+92y/vuu++K6Oho8cMPPwhApKSkFFlmdHS0ePHFFwulV65cWSxYsMAt7cEHH1SusdKSnJwsALFt27Zi86xatUoYjUZht9vd0m/Ul6ioKDF69Gi3/KNGjRKtW7dWPvfu3Vt069bNLU+LFi3E4MGDhRBCHDt2TADiyJEjynan0ykCAwPFkiVLSt3XG/XFRXJysjAYDOLDDz+8YTm9evVyOydiY2NFmzZtblr/X3/9JapUqSKOHDkiQkNDxdy5c5VtdrtdVKlSRbz//vsl60we8fHxIjo6+oZ5irtvCCGP6bRp00RYWJjw8PAQjRo1cjuXhRDi119/FV27dhUWi0UEBQWJxx9/XFy+fFnZnpmZKZ544glhsVhEcHCwmD17drHncFEUl/dm54gkSSI4OFjMmjVL2Z6amipMJpP45JNPiqzLZrOJwMBAMWXKlBK1rTiK+t4uijJbEKwgfn5+XLx4kfDwcLf0gwcPUqVKGU5ZV/lXkZ2Wyo7PPiI58RQANZu3oHmPBzEYTWVb0ZG1sGs+CAmq3g2dJ4PRUrZ1qKioqKioqKioqNwJOCSSF/1yW6oOGtIIDLqb5mvbti0ZGRkcPHiQ5s2bs23bNipWrEhCQoKSZ9u2bcTGxhZbxsmTJ1mzZg1r165Fp5PrfOSRRzCbzWzatAlfX18WL17Mvffey/HjxwkICChUxooVK5gwYQILFiygSZMmHDx4kEGDBmGxWNwWuB47diyzZ8+mdu3ajB07lr59+3Ly5En0ej07d+5kyJAhzJw5k/vvv5/vv/+e8ePHK/v26dOHI0eO8M033/D9998D4Ovrq2yfPHkycXFxzJo1i/nz59OvXz/Onj1bZHvXrl1L48aNefbZZxk0aJCSfurUKbp27crUqVNZunQply9fZtiwYQwbNoz4+Hj27dvH8OHD+eijj2jVqhXXrl1j+/btALz99tscP36cu+66iylTpgAQGBh4w+MH8rTxr7/+muXLl980b0lYvnw5zz33HDt37iz1vmPHjmXOnDkEBgYyZMgQnn766VKVk5aW5jbeu3fvpl27dm6zfmNiYpg5cyYpKSlFRjVmZ2djt9uVciRJ4uuvv+bll18mJiaGgwcPEh4ezquvvqpMN9+/fz92u51OnTop5URERFC9enV2795Ny5YtATh69ChTpkxhz549nD59ulRj48JqtbpF7IIckb5jx45bKs81xb+o87RgHh8fH/T6fJnpZn0prp179+7FbrdjMBjYvXs3o0aNcssTExOj+DdbrVYAt3K0Wi0mk4kdO3bwzDPPlK6zxfSlIB9++CGenp48/PDDxZZx8OBBdu3axdSpU5W09evXExMTwyOPPMK2bduoUqUKzz//vNv1LUkSTzzxBGPGjKFBgwaFyj1w4ADnz59Hq9XSpEkTkpKSiIyMZNasWdx1112l7quLG903QLa6+Pjjj1m0aBG1a9fmxx9/5PHHHycwMJDo6GhSU1Pp2LEjzzzzDHPnziUnJ4fY2Fh69+7Nli1bABgzZgzbtm3jyy+/JCgoiNdee40DBw78bRuYm50jiYmJJCUluV17vr6+tGjRgt27d/Poo48WKnP9+vVcvXqVp5566m+1raSUi63Bo48+SmxsLElJSWg0GiRJYufOnYwePZonn3yyPKpUucP564/f+HpeHMmJp9AbTbTu8wRRD/UtW2FWkmDXAtj5tizMRnSXPWZVYVZFRUVFRUVFRUXltuHr60tkZKQixiYkJDBy5EgOHjxIZmYm58+f5+TJk0RHRxdbhs1m48MPP6RJkyY0atSIHTt2sHfvXlavXk3z5s2pXbs2s2fPxs/Pj88//7zIMiZOnMicOXN48MEHCQ8P58EHH2TkyJEsXrzYLd/o0aPp1q0bderUYfLkyZw9e5aTJ08CMH/+fO677z5Gjx5NnTp1eP7557nvvvuUfc1mM15eXuj1eoKDgwkODsZsNivbBwwYQN++falVqxbTpk0jMzOzSO9SkIUwnU6Ht7e3UhbIIkm/fv0YMWIEtWvXplWrVsybN48PP/yQ3Nxczp07h8VioXv37oSGhtKkSROGDx+uHAuj0Yinp6dSpkvsvhHLly/H29u72Cn4paV27drExcVRt25d6tatW6p933jjDaKjo6lfvz6vvPIKu3btUqYm34yTJ08yf/58Bg8erKQlJSVRqVIlt3yuz0lJSUWWExsbS0hIiCL2JCcnk5mZyYwZM+jatSvfffcdvXr14sEHH2Tbtm1KWUajsdBid5UqVVLqsVqt9O3bl1mzZlG9evUS9akoYmJiePPNNzlx4gSSJLF582bWrl3LxYsXS12WJEmMGDGC1q1bFyv+Xblyhddff51nn31WSStJX2JiYnj//ffZv38/Qgj27dvH+++/j91u58qVK0Dxx8c1Zi6B+9VXXyUlJQWbzcbMmTP566+/bqm/RfXlej744AMee+wxt2vbRdWqVTGZTDRv3pyhQ4e6icOnT59m4cKF1K5dm2+//ZbnnnuO4cOHuz30mDlzJnq9Xrlmr8clck+aNIlx48axYcMG/P39ad++PdeuXSt1f13c6L5htVqZNm0aS5cuJSYmhho1ajBgwAAef/xx5f7peug1bdo0IiIiaNKkCUuXLmXr1q0cP36czMxMPvjgA2bPns29995Lw4YNWb58OQ6H45bb7OJm54jr/UZ5rueDDz4gJiaGqlWr/u32lYRyiZydNm0aQ4cOpVq1ajidTurXr4/T6eSxxx5j3Lhx5VGlyh2K3ZrLwW82cPwn+QldQEhV2vR9Ep+KxXtI3VpFubDldTiT9yTwnmch8jHQaMq2HhUVFRUVFRUVFZU7Cb1WjmC9TXWXlOjoaBISEnjppZfYvn0706dPZ9WqVezYsYNr164REhJC7dq1i90/NDTULcLz8OHDZGZmUqFCBbd8OTk5nDp1qtD+WVlZnDp1ioEDB7pFqTkcDrfIVsDNG7Ny5cqALL5FRERw7NgxevXq5Zb/nnvuYcOGDSUYBfeyLRYLPj4+yoJCJeXw4cP88ssvrFixQkkTQiBJEomJiXTu3JnQ0FBq1KhB165d6dq1K7169cLT07NU9RRk6dKl9OvXr1CU463SrFmzW963uONzMzHz/PnzdO3alUceecTtHCgtM2bM4NNPPyUhIUEZD0mSAHjggQcYOXIkAJGRkezatYtFixbd8MFDQV599VXq1avH448/fsvtAzlCetCgQURERKDRaKhZsyZPPfUUS5cuLXVZQ4cO5ciRI8VG3aanp9OtWzfq16/PpEmTlPSS9GX8+PEkJSXRsmVLhBBUqlSJ/v37ExcXh1ZbsvuLwWBg7dq1DBw4UHmg0alTJ+677z6EEKXqa3F9Kcju3bv5/fff+eijj4rcvn37djIzM/npp5945ZVXqFWrFn379gXk86R58+ZMmzYNgCZNmnDkyBEWLVpE//792b9/P2+//TYHDhxAU4yW4TrXxo4dq/g/x8fHU7VqVVavXu324KE03Oi+cfLkSbKzs+ncubPbPjabjSZNmgDyfWnr1q14eXkVKvvUqVPk5ORgs9lo0SJ/HaCAgIBSP5z5J/jrr7/49ttvWbVq1T9WZ5mLs0IIkpKSmDdvHhMmTODXX38lMzOTJk2a3PDLVuV/j4snj/HT2s/ISpGf3tRt1Y6m9/VApzeUbUXZ1+Db1yD5d9AZoP2rUOvesq1DRUVFRUVFRUVF5Q5Eo9GUyFrgdtO+fXuWLl3K4cOHMRgMRERE0L59exISEkhJSbmpeGWxuM+Gy8zMpHLlym7WCC6uj0x05QdYsmSJmzgAFIocNRjyf6+4BBKXIPJ3KVi2q/zSlp2ZmcngwYOLjKyrXr06RqORAwcOkJCQwHfffceECROYNGkSP//8c5FjczO2b9/OsWPH+Oyzz0q9b3FcfzxdQlxBMc1utxe5760cnwsXLtChQwdatWrltkATQHBwMJcuXXJLc312RSu7mD17NjNmzOD77793E4krVqyIXq+nfv36bvnr1auniJrBwcHYbDZSU1PdjsOlS5eUerZs2cKvv/6qRH+7xqNixYqMHTuWyZMn37CfLgIDA1m3bh25ublcvXqVkJAQXnnlFWrUqFGi/V0MGzaMDRs28OOPPxYZQZiRkUHXrl3x9vbmiy++cDs2JemL2Wxm6dKlLF68mEuXLlG5cmXee+89vL29lYcxxR2fgsemWbNmHDp0iLS0NGw2G4GBgbRo0aJUCzndqC8Fef/994mMjCz2AYPL3rNhw4ZcunSJSZMmKeJs5cqVizxH1qxZA8jX2vUPGpxOJy+99BJvvfUWZ86cUR5IFCzHZDJRo0YNzp07V+L+Xo+3t3ex9w3X/fPrr78uZFVqMsmzoTMzM+nRowczZ84sVHblypWV2Qflwc3OEde76xwrmKcoS4X4+HgqVKjA/fffX25tvp5yEWdr1arFb7/9Ru3atalWrVpZV6Fyh2PPzeXApvWc2LsLAIufPy0fepTKtW7+RCQtx86f17LJtDqQJIGfp5EKXkYCvUxotUU8OUo5C5tiIeMimLwh5g2oXPQKfioqKioqKioqKioqtweX7+zcuXMVIbZ9+/bMmDGDlJQUXnrppVKV17RpU5KSktDr9YSFhd00f6VKlQgJCeH06dP069fvVroAQN26dfn555/d0q7/bDQacTqdt1zHzcpq2rQpR48epVatWsXup9fr6dSpE506dWLixIn4+fmxZcsWHnzwwVK374MPPqBZs2bFrpReFriEuIsXLyqReIcOHSqTss+fP0+HDh1o1qwZ8fHxhSIyo6KiGDt2rOJxCrB582bq1q3r5jcbFxfHG2+8wbfffltI9DMajdx9990cO3bMLf348eOEhoYCsoBoMBj44YcflIjHY8eOce7cOaKiogBYs2YNOTk5yv4///wzTz/9NNu3b6dmzZql7ruHhwdVqlTBbrezZs0aevfuXaL9hBC88MILfPHFFyQkJBRaTwjkKNOYmBhMJhPr168vFFVdmr4YDAZF/P3000/p3r27cpyioqL44YcfGDFihJJ/8+bNypgVxBUFf+LECfbt28frr79eov7erC8uMjMzWbVqFdOnTy9RuZIkKZ64AK1bt77hOfLEE0+4+aKCbP3wxBNPKN6nzZo1w2QycezYMdq0aQPIDzLOnDmjlHOrFHff6Ny5MyaTiXPnzhX7IK1p06asWbOGsLCwIr16a9asicFgYM+ePYr4nJKSwvHjx0scWV4cNztHwsPDCQ4O5ocfflDE2PT0dPbs2cNzzz3nVpYQgvj4eJ588sliBfryoMzFWa1WS+3atbl69aoaKfsf5OKJY/y09lOyUlMAqNOyDU26dsdgcr+5CSG4mmXjVHImpy5ncepyJqcvZ3Il01ZkuR4GLbUreVMv2Jsm1f2pV9kHXdIh+G48WDPApwrcNxP81IcBKioqKioqKioqKnca/v7+NGrUiBUrVrBgwQIA2rVrR+/evbHb7aX+cd6pUyeioqLo2bMncXFx1KlThwsXLvD111/Tq1evIiPmJk+ezPDhw/H19aVr165YrVb27dtHSkpKocVkiuOFF16gXbt2vPnmm/To0YMtW7awadMmtynIYWFhJCYmcujQIapWrYq3t7cSXVZawsLC+PHHH3n00UcxmUxUrFiR2NhYWrZsybBhw3jmmWewWCwcPXqUzZs3s2DBAjZs2MDp06dp164d/v7+bNy4EUmSlOnDYWFh7NmzhzNnzuDl5UVAQECxU8jT09NZvXo1c+bMuaX2lxSz2UzLli2ZMWMG4eHhJCcnl4kl4vnz52nfvj2hoaHMnj2by5cvK9tc0XSPPfYYkydPZuDAgcTGxnLkyBHefvtt5s6dq+SdOXMmEyZMYOXKlYSFhSk+lV5eXso07jFjxtCnTx/atWtHhw4d+Oabb/jqq6+U6G5fX18GDhzIqFGjCAgIwMfHhxdeeIGoqChlMbDrRUuX72q9evXcom1dwnVmZiaXL1/m0KFDGI1GJZpyz549nD9/nsjISM6fP8+kSZOQJImXX365ROM2dOhQVq5cyZdffom3t7fSX19fX8xmM+np6XTp0oXs7Gw+/vhj0tPTSU9PB2ShXafTlagvx48fZ+/evbRo0YKUlBTefPNNjhw54ubB+uKLLxIdHc2cOXPo1q0bn376Kfv27XOLgF69ejWBgYFUr16dX3/9lRdffJGePXvSpUuXm/a1JH1x8dlnn+FwOIq0anjnnXeoXr06ERERAPz444/Mnj3bLcJ95MiRtGrVimnTptG7d2/27t3Le++9p/SlQoUKhaxaDAYDwcHByvXr4+PDkCFDmDhxItWqVSM0NJRZs2YB8iKJt8qN7hve3t6MHj2akSNHIkkSbdq0IS0tjZ07d+Lj40P//v0ZOnQoS5YsoW/fvrz88ssEBARw8uRJPv30U95//328vLwYOHAgY8aMoUKFCgQFBTF27NgS2Vfc7Hy/2Tmi0WgYMWIEU6dOpXbt2oSHhzN+/HhCQkKUBftcbNmyhcTExFtaSO5vIcqB9evXizZt2ohff/21PIr/x0lLSxOASEtLu91NEUII4XQ6xcWLF4XT6bzdTVGw5mSL3Ws+FR+98qL46JUXxdqZk8XFk8cL5fsrJVus+OmsePbDn0X3eduLfA1ctleM+uyQGL3qkBi4bK/o+c6OQnlmvP22OD8rSqS91Urkrh4spKxrZdqfO3GM/9dQx7j8Uce4/FHHuPxRx7j8Ucf4n0Ed5/LnThrj8vr9kJOTI44ePSpycnLKtNx/ihdffFEA4vfff1fSGjduLIKDg93yxcfHC19fX+XzxIkTRePGjQuVl56eLl544QUREhIiDAaDqFatmujXr584d+5csfutWLFCREZGCqPRKPz9/UW7du3E2rVrhRBCJCYmCkAcPHhQyZ+SkiIAsXXrViXtvffeE1WqVBFms1n07NlTTJ061a0Pubm54qGHHhJ+fn4CEPHx8UIIIQDxxRdfuLXH19dX2V4Uu3fvFo0aNRImk0kU/Pm+d+9e0blzZ+Hl5SUsFoto1KiReOONN4QQQmzfvl1ER0cLf39/YTabRaNGjcRnn32m7Hvs2DHRsmVLYTabBSASExOLrX/x4sXCbDaL1NTUYvMUZOvWrSI0NPSGeaKjo8WLL75YKP3o0aMiKipKmM1mERkZKb777ju3sd+6dasAREpKirLPwYMHb9iH+Ph4ART5Ksjhw4dFmzZthMlkElWqVBEzZsxw2x4aGlpkGRMnTnTL98EHH4hatWoJDw8P0bhxY7Fu3Tq37Tk5OeL5558X/v7+wtPTU/Tq1UtcvHix2LEqqs9CiCLbUnDcExISRL169YTJZBIVKlQQTzzxhDh//nyx9VxPcWPmOldd7SrqVdyxKKovR48eFZGRkcJsNgsfHx/xwAMPiD/++KPQvqtWrRJ16tQRRqNRNGjQQHz99ddu299++21RtWpVYTAYRPXq1cW4ceOE1WotUV9L05eoqCjx2GOPFVnOvHnzRIMGDYSnp6fw8fERTZo0Ee+++26h76SvvvpK3HXXXcJkMomIiAjx3nvv3bB9oaGhYu7cuW5pNptNvPTSSyIoKEh4e3uLTp06iSNHjtywnPj4eBEdHV3s9pvdNyRJEm+99ZaoW7euMBgMIjAwUMTExIht27YpeY4fPy569eol/Pz8hNlsFhEREWLEiBFCkiQhhBAZGRni8ccfF56enqJSpUoiLi6u2PtBQW52vgtx83NEkiQxfvx4UalSJWEymcS9994rjh07Vqiuvn37ilatWt2wPaWhpN/bGiFK6ZBcAvz9/cnOzsbhcGA0GgutYPd3VpC7HaSnp+Pr60taWho+Pj63uzlIkkRycjJBQUElNskuT84f+509az8lOz0NgLpRbYmM6aZEy6Zk2fjxxGW2HbvMieRMZT+tBqoFeFIj0IuagRZqBnoRXtGCxeQe0C1JgnPXsvkjKYNf/0rB7/dPaJ/5NQCHDZGs8HwcrcFEBYtsgeDtYcApCRxOCYckcEoCo15LRLAPUTUrEF7R3d+oKO60Mf5fRB3j8kcd4/JHHePyRx3j8kcd438GdZzLnztpjMvr90Nubi6JiYmEh4eX2cJMKn+fQYMG8ccff7B9+/bb3ZTbTkJCAgMGDODMmTO3uykqKioFWLZsGcuWLSvSp1ul/Cjp93aZ2xoAvPXWW+VRrModRk5mBvs3rOPM4f0AeAVUJOqhR6lUoxYOp8SPxy/z/e+XOPxnKlLeIwCtBiKr+dG+bhAta1TAbLz54gVarYawihbC/Ax0Tf4A4bmNXIOZXyv+H9ulGBxXc8AhcTEtl4tpucWWc/BcKp/sPUdEsDc9m1QhqkaFon1sVVRUVFRUVFRUVFRUimH27Nl07twZi8XCpk2bWL58Oe++++7tbpaKioqKyr+UchFn+/fvXx7FqtwhCCE4tW8PBzatx5aTjUajoW6rdjTu8n84NXq+PHSeLw9d4HJGvvF1nUretK8bSNvaFfHzNJa+0tx0+G4cXDyMRqPFfO9o7qnXg3sAq8PJtSwbVzNtXMuykWV1oNVq0Gs16HVa9FoN6Tl2Dv6Zyp7Ea/yRlMGMTX8Q4ufBg02r0qpmBbw9/jmjZxUVFRUVFRUVFRWVfy979+4lLi6OjIwMatSowbx58/55f0IVlVvk3LlzildnURw9elRZsOl/gRUrVjB48OAit4WGhvLbb7/9wy1SUSlMmYmz6enpypQdl3lycdwJ1gAqt0b65WR++uIzkhNPAeBfuQotH+yDvkJlVh+8yFeHL5BpdQDgazZwX8NgOtQNIsTPfKNib0zaX7ApVn43WqDzFKiab/Bv0uuo7Gumsu+N67ivYWVSsmxsPHKRDYcvciE1lwVbTrJgy0kqeBmpGehF42p+1KnkRViA5623V0VFRUVFRUVFRUXlf5ZVq1bd7ibcsYSFhbmtmK5y5xESEqIssFTc9v8l7r//flq0aFHkNoPhvxOkFRkZyYABA253M1SKoczEWX9/fy5evEhQUBB+fn5uq1W6EEKg0WhwOp1lVa3KP4TDbufojz9wZOtmJKcTncFI405dqRjZki8OJ/HNVz9jdUgABPt68FDTKnSMqIRR/zf9vi7+At+NlSNnvSrBfTMgoMYtF+dvMdKvRSgPNqnKd0eT2PirLNJezbRxNfMaexNlP2SDTkN1Hz3Na+YSUdmHOsHe+KjRtSoqKioqKioqKioqKsWiirN3Pnq9nlq1at3uZvxjeHt74+3tfbubcduJjIwkMjLydjdDpRjKTJzdsmULAQEByt9FibMq/z6EEPz526/s37iOrBRZuAypU4+wjj3YdDqb7z8+iMMpG8rWCLTwSLNqtKpZRl6uJ76HbTPAaYfACOg6HTwD/n65gNmo44HIKjwQWYUsq4MzV7P4/WIGv/6VyukrWaRk2/gjOZuTKX+iQe5LsK8HdSt5U7uSF1X9zQT7mgn0MmHQadTzXUVFRUVFRUVFRUVFRUVFRUWl1JSZOBsdHa2sQNa+ffuyKlblNpJ6KYl9X60l6dRxADx9fKl7b3e2Z/szb0MizrxVvu6q4sPDzarRtHrREdOlRpJg/1I48JH8ObwtdBgHhvJZkdZi0tMgxJcGIb483KwqQgj+upbNjt/PcSFLw/HkTC6k5pKUJr+2Hb/str9WA0a9FoNOi1GvxajTYtBrMeV9Num1eHno8fYw4ONhyPtbj4+HHl+zgQCLCT+zQV2cTEVFRUVFRUVFRUVFRUVFReU/RpkuCFazZk1CQ0Pp0KEDHTt2pH379lStWrUsq1D5B7DlZPPL999wbPd2hBBo9XrqtGrPSd96TD6QTI49CYDIan48ek81GoT4lmHl2ZAwDRK3y58bPwr3DAbt37RHKAUajYYq/mY61PInKCgIrVZLRq6d45cyOX4pg1PJmVxMz+VSWi5Wh4QkINcukWuXbrlOvU5DkLeJQG8Tlbw9qOTjQZCPiUo+HgR6m/D3NKJTxVsVFRUVFRUVFRUVFRUVFRWV/ynKVJzdsmULCQkJJCQk8Mknn2Cz2ahRowYdO3akQ4cOdOjQgUqVKpVllSpliJAkTu77iUPffo01OwuAqvUbomsYzbuHUrh88iIANQMtDGgdTmQ1v7JtQMYl+PY1uHoSdAZoOxrqdi3bOm4Rbw8DzUL9aRbqr6QJIci0OrA5JOxOgc0hYXM6sTkENqeE3Slhc0jk2JxkWh1k5NpJz3Xk/53jIC3HTmq2DYdTcCE1lwupuUBaofo1GnmBNX9PIwEW+eVvMVLBYnRLC7CoIq6KioqKioqKioqKioqKiorKv4UyFWfbt2+vWBrk5uaya9cuRaxdvnw5drudiIgIfvvtt7KsVqUMuHT6JPu/Xse1C38B4BtYiVqdurPuLz27tsuRskHeJp5sFUbbWhXLfgp+0hH4bhzkpIDZH7pMheC7yraOMkaj0eBdBouEOZwSV7NsJKdbuZSeS3KG6z2X5HQrVzKtSAJSs+2kZttJvJJVbFk6rQZvDz05NiceBh0BFiNB3iZC/Mw0DfWnYRVfVbxVUVFRUVFRUVFRUVFRUVFRuUMoU3G2IB4eHnTs2JE2bdrQoUMHNm3axOLFi/njjz/Kq0qVW+DahfMc+nYDF47/DoDB5EHDe2NICohg4o4z5NicaDXQs0kV+t5THQ+Druwbcewb2D5bXvirQi2ImQbe/50Ia71OSyUf2cqgIYUtIiRJkJ5r52qWjZQsG9dcr2z5sys9JduOUxKkZtsBsDok0nLyxdwvDp7Hz9NAFT8zXiY9/hYjDav40qS6X5mIzCoqKioqKioqKiplwbJlyxgxYgSpqal/q5xJkyaxbt06Dh06VCbt+rtoNBq++OILevbsebubUm6cOXOG8PBwhBC3uykqKioFuFOvzTvtPn27KHMjT5vNxo8//sjkyZPp0KEDfn5+DBkyhJSUFBYsWEBiYmJZV6lyC2Rcu8LOzz5i4/zZXDj+OxqNhtr3tKLjsJdZn1mZuVtOkWNzUruSF2892oSnWoeXvTArSfDTIkiYLguz4W3h/vn/KWG2JGi1Gvw8jdQM9KJ5WABdGgTz6D3Veb59LcZ2q8+bvSOJf+oe1j7Xivf7N2de3ya892Qz5vVtwsQe9RkcXYNO9SrhZdKTmm3ntwvp7Em8xjdHkpj17TEef38Pk9b/xo4TV7A7b903V0VFRUVFRUVFRaUs6NOnD8ePH7/dzbhlJk2aRGRkZJmUFRYWxltvvVUmZblo3749I0aMuGm+zMxMhg0bRtWqVTGbzdSvX59FixaVaVvKm2vXrvHCCy9Qt25dzGYz1atXZ/jw4aSluVvJnTt3jm7duuHp6UlQUBBjxozB4XAo29euXUvnzp0JDAzEx8eHqKgovv3220L1nT9/nscff5wKFSpgNptp2LAh+/btU7YLIZgwYQKVK1fGbDbTqVMnTpw4UWTbrVYrkZGRaDQaN+EqNzeXAQMG0LBhQ/R6fbFi/zvvvEO9evUwm83UrVuXDz/8sMTjtmTJEtq2bYu/vz/+/v506tSJvXv3KtvtdjuxsbE0bNgQi8VCSEgITz75JBcuXChVXwBWrVpFZGQknp6ehIaGMmvWLLftO3bsoHXr1sqYRkREMHfuXLc8P/74Iz169CAkJASNRsO6detK3FeAAQMGoNFo3F5du7pbLB44cIDOnTvj5+dHhQoVePbZZ8nMzHTLM3z4cJo1a4bJZCr2HvDtt9/SsmVLvL29CQwM5KGHHuLMmTNF5t25cyd6vb5QWQsXLqRRo0b4+Pgo5+OmTZtK1ed/EyUZ119++YW2bdvi4eFBtWrViIuLK5Rn9erVRERE4OHhQcOGDdm4caPb9tt5zyvTyNmOHTuyZ88ewsPDiY6OZvDgwaxcuZLKlSuXZTUqf4OcjHR+3fIdJ/fuRpKcAIQ2akLjzvdxNtfE6PXHuJZlQ6vV8Ng91Xi4WbXymQZvy4IfXodzu+XPTZ+EZk/9owt//a+h1Wqo5OPhlhZe0aL8/byzJseSMkjJtpFldXAhNZf9Z1M4dy2b/WdT2H82BT9PAx0jgqjs60GO3YkQEFrBQoMQn/KJmlZRUVFRUVFRUVG5DrPZjNlsLna7zWbDaDT+gy36bzJq1Ci2bNnCxx9/TFhYGN999x3PP/88ISEh3H///WVWT3kezwsXLnDhwgVmz55N/fr1OXv2LEOGDOHChQt8/vnnADidTrp160ZwcDC7du3i4sWLPPnkkxgMBqZNmwbI4l/nzp2ZNm0afn5+xMfH06NHD/bs2UOTJk0ASElJoXXr1srM4cDAQE6cOIG/f/66JXFxccybN4/ly5cTHh7O+PHjiYmJ4ejRo3h4uP+We/nllwkJCeHw4cNu6U6nE7PZzPDhw1mzZk2R/V64cCGvvvoqS5Ys4e6772bv3r0MGjQIf39/evTocdNxS0hIoG/fvrRq1QoPDw9mzpxJly5d+O2336hSpQrZ2dkcOHCA8ePH07hxY1JSUnjxxRe5//773cTom/Vl06ZN9OvXj/nz59OlSxd+//13Bg0ahNlsZtiwYQBYLBaGDRtGo0aNsFgs7Nixg8GDB2OxWHj22WcByMrKonHjxjz99NM8+OCDN+1fUXTt2pX4+Hjls8lkUv6+cOECnTp1ok+fPixYsID09HRGjBjBgAEDlPPIxdNPP82ePXv45ZdfCtWRmJjIAw88wKhRo1ixYgVpaWmMHDmSBx98kAMHDrjlTU1N5cknn+Tee+/l0qVLbtuqVq3KjBkzqF27NkIIli9fzgMPPMDBgwdp0KDBLfX/TudG45qenk6XLl3o1KkTixYt4tdff+Xpp5/Gz89POUd27dpF3759mT59Ot27d2flypX07NmTAwcOcNddsqXmP3XPKxJRhuj1elGtWjXxwgsviDVr1ogrV66UZfG3jbS0NAGItLS0290UIYQQTqdTXLx4UTidzhLvk37lsvhp7WdixbiXxEevvCg+euVF8f0H74orf54TkiSJz/f9Ke6fv110n7ddDP5wnzielF5+HUg7L8RnTwqxqJ0QSzoJceL78qvrFrmVMf638ue1LLF8V6J4/P2fRPd524t8Pbxwp5jz7R9i/9lrItfuKJN6/0tjfLtQx7j8Uce4/FHHuPxRx/ifQR3n8udOGuPy+v2Qk5Mjjh49KnJycpQ0SZKEzWa7LS9JkkrU7q+++kr4+voKh0P+P/LgwYMCELGxsUqegQMHin79+gkhhIiPjxe+vr7KtokTJ4rGjRuLJUuWiLCwMKHRaIQQQqSkpIiBAweKihUrCm9vb9GhQwdx6NChQvsVZMmSJSIiIkKYTCZRt25d8c477yjbEhMTBSDWrFkj2rdvL8xms2jUqJHYtWuXWxnvvfeeqFq1qjCbzaJnz55izpw5Snvj4+MF4PaKj48XQggBiCVLloiePXsKs9ksatWqJb788stixy06OrpQWS62b98u2rRpIzw8PETVqlXFCy+8IDIzM5Xt77zzjqhVq5YwmUwiKChIPPTQQ0IIIfr371+ozMTExCLrb9CggZgyZYpbWtOmTcXYsWOLbbNrDG9E//79xQMPPCCmTp0qKleuLMLCwpTx+eKLL9zy+vr6KuNX0uNzM1atWiWMRqOw2+1CCCE2btwotFqtSEpKUvIsXLhQ+Pj4CKvVWmw59evXF5MnT1Y+x8bGijZt2hSbX5IkERwcLGbNmqWkpaamCpPJJD755BO3vBs3bhQRERHit99+E4A4ePBgkWW6xvJ6oqKixOjRo93SRo0aJVq3bl1s+26Ew+EQ3t7eYvny5cXm2bt3rwDE2bNn3dJv1Je+ffuKhx9+2C3/vHnzRNWqVW94f+nVq5d4/PHHi9xW1Hl0M4obRxeLFy8WQUFBbt8vv/zyiwDEiRMnCuUv6t4jhBCrV68Wer3erZz169cLjUYjbDabW94+ffqIcePGFVvW9fj7+4v333+/2O0luTa3bt0q7r77buHp6Sl8fX1Fq1atxJkzZ5Tt69atE02aNBEmk0mEh4eLSZMmKdeREDe/JwshxPTp00VQUJDw8vISTz/9tIiNjS1R/4Qoflzfffdd4e/v73a9xsbGirp16yqfe/fuLbp16+a2X4sWLcTgwYOVz7dyz7sZRX1vF0WZRs6mpqayfft2EhISmDlzJn379qVOnTpER0fTvn17oqOjCQwMLMsqVW7C1fN/cvTHLZz79ZDiLVKxehiRnf+P4Fp1yLY5mLHpD3adugpAx4ggnmtfs/yiJC8chM0TIDcdPCvI/rJBEeVTl0qJqOrvyZNRYTx2T3X2Jl5j75lrZFkdmA067JLgeFIGyRlWth67zNZjl9Fq5H1qBFrw8zRS0ctIWAULYRUt+JpV71oVFRUVFRUVlX8Sh8PB0qVLb0vdTz/9NAbDzf//a9u2LRkZGRw8eJDmzZuzbds2KlasSEJCgpJn27ZtxMbGFlvGyZMnWbNmDWvXrkWnk3+rPPLII5jNZjZt2oSvry+LFy/m3nvv5fjx4wQEBBQqY8WKFUyYMIEFCxbQpEkTDh48yKBBg7BYLPTv31/JN3bsWGbPnk3t2rUZO3Ysffv25eTJk+j1enbu3MmQIUOYOXMm999/P99//z3jx49X9u3Tpw9Hjhzhm2++4fvvvwfA1zd/XYnJkycTFxfHrFmzmD9/Pv369ePs2bNFtnft2rU0btyYZ599lkGDBinpp06domvXrkydOpWlS5dy+fJlhg0bxrBhw4iPj2ffvn0MHz6cjz76iFatWnHt2jW2b98OwNtvv83x48e56667mDJlCkCxv9FbtWrF+vXrefrppwkJCSEhIYHjx48XmlJ+K/zwww/4+PiwefPmUu97o+NTEtLS0vDx8VHy7969m4YNG1KpUr69XkxMDM899xy//fabEhlbEEmSyMjIcDtu69evJyYmhkceeYRt27ZRpUoVnn/+eeXYJSYmkpSURKdOnZR9fH19adGiBbt37+bRRx8F4NKlSwwaNIh169bh6elZ6vEB2Ubg+khcs9nM3r17sdvtJbpuC5KdnY3dbi/yPHWRlpaGRqPBz89PSbtZX6xWa6F0s9nMX3/9xdmzZwkLCyu0z8GDB9m1axdTp04tVR9uRkJCAkFBQfj7+9OxY0emTp1KhQoVlHYajUa0BWb6uqL7d+zYQa1atUpUR7NmzdBqtcTHxzNgwAAyMzP56KOP6NSpk9sxiY+P5/Tp03z88cc37afT6WT16tVkZWURFRVV2m4rOBwOevbsyaBBg/jkk0+w2Wzs3bsXjUaeSb19+3aefPJJ5s2bR9u2bTl16pQSlTpx4kTg5vfkVatWMWnSJN555x3atGnDRx99xLx586hRo8Yttxvka7hdu3ZuEfgxMTHMnDmTlJQU/P392b17N6NGjXLbLyYmxs0CozzveTejTMVZi8VC165dFW+OjIwMduzYwdatW4mLi6Nfv37Url2bI0eOlGW1KtfhdNg5++shju/eyZU/zyjpIXXq0SD6XoLCa6LRaEjOyGXy+qOcu5aNTqthcLsadL0rWLn4ypyj62HnWyA5ITACukwFL1Wsv1PQ67S0qlWRVrUquqULIfgjKYMtfyTz0+mrpGbbOXctm3PXsguVUcHLiI+HAYtJT1V/MzUDLdQI9CK0gicmvWqLoKKioqKioqLyX8TX15fIyEgSEhJo3rw5CQkJjBw5ksmTJ5OZmUlaWhonT54kOjq62DJsNhsffvihIiTu2LGDvXv3kpycrEw/nj17NuvWrePzzz9XRIOCTJw4kTlz5ijTnsPDwzl69CiLFy92E2dHjx5Nt27dAFlMbdCgASdPniQiIoL58+dz3333MXr0aADq1KnDrl272LBhAyALNl5eXuj1eoKDgwu1YcCAAfTt2xeAadOmMW/ePPbu3VvI3xIgICAAnU6Ht7e3W1nTp0+nX79+im9s7dq1mTdvHtHR0SxcuJBz585hsVjo3r073t7ehIaGKgKjr68vRqMRT0/PIttXkPnz5/Pss89StWpV9Ho9Wq2WJUuW0K5duxvuVxIsFgvvv//+LdkZ3Oj43IwrV67w+uuvu50fSUlJbsIsoHxOSkoqspzZs2eTmZlJ7969lbTTp0+zcOFCRo0axWuvvcbPP//M8OHDMRqN9O/fXymrqLpc24QQDBgwgCFDhtC8efNivUhvRkxMDO+//z49e/akadOm7N+/n/fffx+73c6VK1dKbT0ZGxtLSEiIm7BckNzcXGJjY+nbty8+Pj4l7ktMTAwjR45kwIABdOjQgZMnTzJnzhwALl686CbOVq1alcuXL+NwOJg0aRLPPPNMqfpwI7p27cqDDz5IeHg4p06d4rXXXuO+++5j9+7d6HQ6OnbsyKhRo5g1axYvvvgiWVlZvPLKK0o7S0p4eDjfffcdvXv3ZvDgwTidTqKioty8T0+cOMErr7zC9u3bb/jA4ddffyUqKorc3Fy8vLz44osvqF+//i2PQXp6OmlpaXTv3p2aNWsCUK9ePWX75MmTeeWVV5R7ZY0aNXj99dd5+eWXmThxYonuyW+99RYDBw5k4MCBAEydOpXvv/+e3NzcW243yNdpeHi4W1rBa9jf37/Y67zgNV6e97ybUabi7PVYLBYCAgIICAjA398fvV7P77//Xp5V/mcRksSlxFOcO3KYs78cxJqdBYBWq6N6w0jqt+tIQEgVJf/J5Ewmf/Ubqdl2/C1Gxv5fPeoGe5dP4yQn7F4AR9bKn2t2hPavgN504/1U7gg0Gg31KvtQr7IPz7evybUsG6evZJF4OYsMq4OktBzOXM0mKS2Xq5k2rmbaADhyPt9k3xVtWzPQQs0gL6oHeOJr1oPNebu6paKioqKioqLyP4Fer+fpp5++bXWXlOjoaBISEnjppZfYvn0706dPZ9WqVezYsYNr164REhJC7dq1i90/NDTULcLz8OHDZGZmKpFtLnJycjh16lSh/bOysjh16hQDBw50i0J1OBxuka0AjRo1Uv52iVjJyclERERw7NgxevXq5Zb/nnvuUcTZm1GwbIvFgo+PD8nJySXa18Xhw4f55ZdfWLFihZImhECSJBITE+ncuTOhoaHUqFFDCZ7q1atXqaMw58+fz08//cT69esJDQ3lxx9/ZOjQoTcU6UpKw4YNb9ln9kbH50akp6fTrVs36tevz6RJk26pboCVK1cyefJkvvzyS4KCgpR0SZJo3ry54lPbpEkTjhw5wqJFi9zE/xsxf/58MjIyePXVV2+5fQDjx48nKSmJli1bIoSgUqVK9O/fn7i4OLfoz5IwY8YMPv30UxISEgpF44K8OFjv3r0RQrBw4cJS9WXQoEGcOnWK7t27Y7fb8fHx4cUXX2TSpEmF2rl9+3YyMzP56aefeOWVV6hVq5byoOPv4opaBvncbNSoETVr1iQhIYF7772XBg0asHz5ckaNGsWrr76KTqdj+PDhVKpUqVTjmZSUxKBBg+jfvz99+/YlIyODCRMm8PDDD7N582YkSeKxxx5j8uTJ1KlT54Zl1a1bl0OHDpGWlsbnn39O//792bZt2y0LtAEBAQwYMICYmBg6d+5Mp06d6N27t3KNHT58mJ07d/LGG28o+zidTnJzc8nOzi7RPfn3339nyJAhbtujoqLYunXrLbW5rCnPe97NKFNxVpIk9u3bR0JCAlu3bmXnzp1kZWVRpUoVOnTowDvvvEOHDh3Kssr/NJLk5NLpE5z79TB/Hv2V3MwMZZunjy+1W7amVvOWmL193PbbfzaFGZt+J9cuUb2CJ5N6NCDQu5yE0tx0+GEy/JVnCn73QGjyBJRXdK5KuaLRaKjgZaKCl4m7w9yntGTbHPx5LYdMq4P0XDtnr2Rx+koWpy9nkZaTH2279dhlAAQCh91BBZ8/CfYxU8nHRFV/T4K8TVT0NlHBYqSClxFPY7k+Q1JRUVFRUVFR+Vej0WhKPUX5dtC+fXuWLl3K4cOHMRgMRERE0L59exISEkhJSblh1CzIQmZBMjMzqVy5sps1gouC06oL5gd5FfoWLVq4bXPZJLgoOJ6uWYWSJN2wfSXl+mOl0WhKXXZmZiaDBw9m+PDhhbZVr14do9HIgQMHSEhI4LvvvmPChAlMmjSJn3/+ucixKYqcnBxee+01vvjiCyVKtVGjRhw6dIjZs2f/baHi+uMJ8li4rPhc2O32Qvlu5fhkZGTQtWtXvL29+eKLL9zKCA4OZu/evW75XQswXR9d/Omnn/LMM8+wevXqQmNQuXLlQsJYvXr1lEW7XGVdunTJLXL10qVLygr0W7ZsYffu3W6LUQE0b96cfv36sXz58hv204XZbGbp0qUsXrxYqe+9997D29u7VFaTs2fPZsaMGXz//fduorgLlzB79uxZtmzZokTNlrQvGo2GmTNnMm3aNJKSkggMDOSHH34AKDTV3RUZ2bBhQy5dusSkSZPKTJy9nho1alCxYkVOnjzJvffeC8Bjjz3GY489xqVLl7BYLGg0Gt58881STcl/55138PX1JS4uTkn7+OOPqVatGnv27CEiIoJ9+/Zx8OBBZUE0SZIQQqDX6/nuu+/o2LEjAEajUbFTaNasGT///DNvv/02ixcvvuV+x8fHM3z4cL755hs+++wzxo0bx+bNm2nZsiWZmZlMnjy5yAXXPDw8Sn1PLkuCg4MLLZp2/TVcXB7X9vK+592MMlU9/Pz8yMrKIjg4mA4dOjB37lzat2+vhESr/H0kycnFk8f5/addpJw9rUTIAhjNnlSr35DqDSOpXLsOWm3haeQ/nb7KjE1/4JQEjav58up99bCYykn8Sv0TvnkF0v4CvQd0eA1q3PifLpV/L55GvXv0dV35TQjBtSwbpy5ncTI5k8QrmfyVkkNqto0Uu4O0HDvpOQ6OX8ooslyzQYe/xYC/pxFfswGjXotJr6WCl4mq/mZqBHpR2ccDrVYV/FVUVFRUVFRU7lRcvrNz585VhNj27dszY8YMUlJSeOmll0pVXtOmTUlKSkKv1xfpS3k9lSpVIiQkhNOnT9OvX79b6QIgR6v9/PPPbmnXfzYajTidZTNDrKiymjZtytGjR2/oc6nX6+nUqROdOnVi4sSJ+Pn5sWXLFh588MEStc9ut2O32wtFBep0ujITqq8nMDDQbYr4iRMnyM4ubKVWWtLT04mJicFkMrF+/fpC0Z9RUVG88cYbJCcnK5GwmzdvxsfHx01s/eSTT3j66af59NNPFfGmIK1bt+bYsWNuacePHyc0NBSQxcXg4GB++OEHRYxNT09nz549PPfccwDMmzfPzWP0woULxMTE8NlnnxV6qFASDAYDVatWBWRhuXv37iWO9IyLi+ONN97g22+/pXnz5oW2u4TZEydOsHXr1kIRk6Xpi06no0oVeabvJ598QlRU1A1FZEmSsFqtJerHrfDXX39x9erVIu0fXFPjly5dioeHB507dy5xudnZ2UVeUyD3ycfHh19//dVt+7vvvsuWLVv4/PPPC03dL0hZjUmTJk1o0qQJr776KlFRUaxcuZKWLVvStGlTjh07Vux9pyT35Hr16rFnzx6efPJJJe2nn376222Oiopi7Nixbn7Kmzdvpm7duvj7+yt5fvjhB8UOxpXH5dN7O+55BSlTVW7WrFl06NDhpuHXKrdO5rVrbFm6GIfDjl5vwMPiSbX6jajeMJLgmrXR6or39dx+4jKzvzuOJAla1arA6C51MehKN6WhxCRuh4QZYMsEryCImQ4VS2aSrfK/RcFo23vC86NtJUni7PmLOAzeXM60cTEtl/OpOVzOsHIty8aVTCvZNic5dic5qU4upBbvQ2PSa6kW4EkVPzMVvIx4GHR4GnUE+3gQ7OtBiJ+5/M51FRUVFRUVFRWVm+Lv70+jRo1YsWIFCxYsAKBdu3b07t0bu91+08jZ6+nUqRNRUVH07NmTuLg46tSpw4ULF/j666/p1atXkWLS5MmTGT58OL6+vnTt2hWr1cq+fftISUkptFBMcbzwwgu0a9eON998kx49erBlyxY2bdrktm5HWFgYiYmJHDp0iKpVq+Lt7V0oerCkhIWF8eOPP/Loo49iMpmoWLEisbGxtGzZkmHDhvHMM89gsVg4evQomzdvZsGCBWzYsIHTp0/Trl07/P392bhxI5IkUbduXaXMPXv2cObMGby8vAgICCgkSPj4+BAdHc2YMWMwm82Ehoaybds2PvzwQ958881b6svN6NixIwsWLCAqKgqn00lsbOzfjgpPT0+nS5cuZGdn8/HHH5Oenk56ejogi8E6nY4uXbpQv359nnjiCeLi4khKSmLcuHEMHTpUOW4rV66kf//+vP3227Ro0ULxqTSbzYotxsiRI2nVqhXTpk2jd+/e7N27l/fee4/33nsPkH8XjRgxgqlTp1K7dm3Cw8MZP348ISEh9OzZE5Ajnwvi5eUFQM2aNRWRFeDo0aPYbDauXbtGRkYGhw4dAlBE3+PHj7N3715atGhBSkoKb/4/e/cdH0WdP378NTPbNx0IoRdFEKSKUiygIuBhwcPT44uKJ3r6s3fOU0Q9xYaNs+Md6lnxbGcXQRAU6SCIBkEQBUIo6dtnPr8/JjtkTQKhhAC+n4/Hkt2Zz8585rObIfve97w/jzzCihUr6px5+8ADD3DHHXfw6quv0rZtW+d409LSSEtLIx6Pc84557B48WI++OADTNN02uTk5ODxeOp0LFu3buW///0vAwcOJBKJMGXKFN58801mzZrlPO/JJ5+kdevWTtmKL7/8kokTJ6ZkjpeXl7N69WrncfL3Lycnp1o/fiuZETpixAjy8vJYs2YNt9xyC4cffjhDhgxx2j3xxBP079+ftLQ0pk2bxs0338z999+fkhW6evVqysvLKSgoIBwOO69L586d8Xg8DBs2jEcffZS7777bKWvw97//3akLres6Rx11VEr/cnNz8fl8KctvvfVWTjvtNFq3bk1ZWRmvvvoqM2fO5NNPP93pse7M2rVree655zjzzDNp3rw5+fn5/Pjjj04g9Y477uD000+ndevWnHPOOei6zrJly1ixYgX33HNPnc7J1157LRdddBG9e/fmuOOO45VXXuG7777bZfbxrsY1WQpizJgxjB07lhUrVvD444+nTOR17bXXMmDAAB5++GGGDRvG66+/zsKFC53fz4Y456VQYpdKSkoUoEpKShq6K0oppaZNflJNe3Gy+jV/pTITiTo9Z/r3BerMf85Wp0+arR7+9AeVMK366ZyZUGru00o9c6J9e/cKpSq21c++6pFpmmrTpk3KNM2G7sohqy5jHI4l1K9FIbX812L15apC9cGyjeqdxb+qV775WT02bZW6/o0l6uwn56jTJ83e6e3MJ+aoC/41T/31pQXqmtcWq7H/XaYe/vQH9e6SX9XyX4tVRTS+H498/5H3cf2TMa5/Msb1T8Z4/5Bxrn8H0hjX1+eHcDisVq5cqcLh8D7d7v5y7bXXKkB9//33zrLu3burvLy8lHZTpkxRmZmZzuPx48er7t27V9teaWmpuvrqq1Xz5s2V2+1WrVq1UqNGjVLr16+v9XmvvPKK6tGjh/J4PCo7O1udeOKJ6u2331ZKKbV27VoFqCVLljjti4qKFKC++OILZ9lzzz2nWrRoofx+vxo+fLi65557Uo4hEomoESNGqKysLAWoKVOmKKWUAtQ777yT0p/MzExnfU3mzp2r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evfuzcyZM7n++uu56667KC8vp6SkhNWrV9cY6EiKxWK89NJLTiBxzpw5zJ8/n8LCQrxe+z+qiRMn8u677/Lf//7XuSS6qvHjx/Pwww/zxz/+EYB27dqxcuVKnn322ZTg7E033cSwYcMAO5japUsXVq9eTadOnfjnP//Jaaed5mQ+HnHEEXz99ddOVp/f7yctLQ2Xy0VeXvUrEi+66CJGjhwJwIQJE5g0aRLz589n6NCh1drm5ORgGIZT/zDpvvvuY9SoUU72WIcOHZg0aRIDBgzg6aefZv369QSDQU4//XTS09Np06aNE2DMzMzE4/EQCARq7F9SMnBx66238uyzzxIMBnn00Uf59ddfq11SvSeCwSDPP//8HpUz2Nnrsytbt27lH//4R8r7o6CgICUwCziPq9YLrWrixImUl5dz7rnnOst++uknnn76aW644Qb+/ve/s2DBAq655ho8Hg+jR492tlXTvpLrlFJcdNFFXH755fTu3Zt169bt8phqMmTIEJ5//nmGDx9Or169WLRoEc8//zzxeJytW7fSrFmz3dre2LFjad68eUpwq6pIJMLYsWMZOXJkytUC11xzDb169SInJ4evv/6aW2+9lU2bNjnByIKCAtq1a5eyrapjn52dXevrU/W1eeCBB3C5XNVKA9TFTz/9BNiZpY888ght27bl4YcfZuDAgdW+6Bk5ciTvvfce4XCYM844g+eff95Z16xZM5555hl69+5NNBrl+eefZ+DAgcybN49evXoBdlZwaWkpnTp1wjAMTNPk3nvvZdSoUXt8LP/6178YMmQILVu23O1jr2r9+vXk5eUxaNAg3G43rVu35thjj3XWTZkyhfXr1ztlFm666SY++eQTpkyZwoQJE+p0Xvr444+ZP38+xxxzjNP3I488cq/6vXXrVkzTrPE9ksy+TmZm//aLg6rvoyFDhvDYY4/x2muvce6551JQUOB8gbUvznm7IsHZ35PQdph5P/wyz37c7kQ48WbwNWypBiGEEKImdoBYJ81r0CTd2+CXKe9MRTSBy9DwuozK0guqMqt1R0A2meFqWopwzC5HYVZmB6vKQKICpyaxrmGXbXDruHWduGVRGo5TFrED0JqGXZJBtwOB4ZjJ1vIom0oiROJWZXkGzSnjAHZg0VMZXN5aHqUkFMdUimgkguH2EIlbhGImmgbZAQ8ZfhdxU1EeSVASjhMzLaf8g2kpIgmThKmc0hKRuIlVeTyAPRZA3DTtBXt55fXm0ig/bi7fu400kB1B8HV7HATXNUirDOJqVAaukxnZhlYZ1N6x9cqEbDszG5zAcTK+q1U+Tga2owmTUGVZFK1KUDyZ8e33GLh0+/1jWiqlTIjHpeMy7DrRiSq1tZPHDsnt2L/HMdMkw+emUZqXgMdwsryT+9O0HUF6vfJn1eMzDI2EqQjFEkQrM+gtZdE5W6NKeb/fBV33cnSvNxps33U1YMAAZs6cyY033sjs2bO57777mDp1KnPmzGH79u00b96cDh061Pr8Nm3apGR4Llu2jPLycho1apTSLhwOs2bNmmrPr6ioYM2aNYwZMyYlCzWRSKRktgJ067YjcSUZxCosLKRTp07k5+dz9tlnp7Q/9thjUy653pmq2w4Gg2RkZOx25tiyZcv49ttveeWVV5xldnkLi7Vr13LqqafSpk0b2rdvz9ChQxk6dChnn332bmVhut1u3n77bcaMGeMEiQcNGsRpp522TyYK7dq16x7Xmd3Z67MzpaWlDBs2jM6dO3PnnXfu0b4BXn31Ve666y7ee++9lHqilmXRu3dvp05tz549WbFiBc8880xK8H9n/vnPf1JWVpaSBbgnxo0bR0FBAX379kUpRdOmTRk9ejQPPvjgbv89df/99/P6668zc+bMGi/LjsfjnHvuuSilePrpp1PWVc147datGx6Ph8suu4z77rvP+VJlby1atIjHH3+cxYsX79F8BJZl/x9y2223MWLECMAuRdKyZUvefPNNLrvsMqfto48+yvjx41m1ahW33norN9xwA0899RQAHTt2pGPHjk7b/v37s2bNGh599FH+85//ADB16lReeeUVXn31Vbp06cLSpUu57rrraN68OaNHj97tY/n111/59NNPmTp16m4f92/96U9/4rHHHnPOG3/4wx8444wzcLlcLF++HNM0OeKII1KeE41GnXPwrs5Lq1atwuVycfTRRzvrO3XqVGsJiP1t8ODBPPTQQ1x++eVccMEFeL1exo0bx+zZs/fLZxAJzv5e/LoQZtwD4SIwPND/ajjyDJn0SwghhNgHgt4df1LpuoaOdtD8kbW3dTpNSzmBM8tSlEbidl1gUssuJLOUa1L1A4iqDFInJ4YDO9PWtBRFFTE2l0XYUhYlbipn/wmrMhvaTN6vLJFR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+fPVqaeeqtLS0lQwGFTdunVT9957r1JKqdmzZ6sBAwao7Oxs5ff7Vbdu3dQbb7zhPDc/P1/17dtX+f1+Bai1a9fWuO/HH39ctWzZUrndbtW6dWt1++23q2g0Wmtfq47hzowePVqdddZZ1ZZv2LBBDR48WAWDQdWhQwf10UcfpYxPXV+fqr744guFfa1AtVvV4163bp067bTTlN/vV40bN1Y33nijisfjzvoBAwbUuI3Ro0en7O/9999XRx11lPJ6vapTp07queeeS1lvWZYaN26catq0qfJ6veqUU05R+fn5tY5VTceslFJt2rSpsT9JK1euVD169FB+v19lZGSos846S/3www+17ue3atv++PHjU/pV0y35WixatEj16dNHZWZmKp/Pp4488kg1YcIEFYlEUva1bNkydfzxxyuv16tatGih7r///mr9mTp1qjriiCOUx+NRXbp0UR9++OEu+//oo4/W+XhjsZi68cYbVW5urkpPT1eDBg1SK1ascNbPmDFD9evXzzmWDh06qLFjx6qioiKnzQMPPKAOO+ww5fP5VE5Ojho4cKCaMWNGyn5KS0vVtddeq1q3bq18Pp9q3769uu2223b6e1XbsYwcOVL179+/zsc4fvz4au/Xqt555x3Vp08flZGRoYLBoOrbt6/6/PPPnfWxWEzdcccdqm3btsrtdqtmzZqps88+W3377bdOm52dl5RSatOmTWrYsGHK6/Wq1q1bq5deemmXr1Vt77UBAwaktPvnP/+pWrdurTwejzr22GPVN998k7I+HA6rK664QmVnZ6tAIKDOPvtstWnTppQ2J510kvMa9+nTR3300Uc7GdG6qev/25pS+6Ca9yGutLSUzMxMSkpKdllDZX/Y6WVx8Qh8PQl++NB+nNcVTh4H6U2rb0jUam/r74ldkzGufzLG9U/GuP7JGNc/GeP9Q8a5/h1IY1xfnx8ikQhr166lXbt2NU7MIxrGpZdeyg8//MDs2bMbuisNbt26dbRr126fTBomhNh37rzzTtatW8cLL7zQ0F35Xanr/9tS1uBQsv0n+PwuKFpnX/vW83w4+i+g74cUbCGEEEIIIYT4HZg4cSKnnnoqwWCQjz/+mBdffNGZsV0IIYTYXfK1/aFAKfj+fXj7MjswG8iBYQ/DMZdIYFYIIYQQQggh9qH58+dz6qmn0rVrV5555hkmTZq0z+o+CrE/JGvH1nQ71DLAJ0yYUOuxnnbaaQ3dPSEAyZw9+IW2w5cT4eev7MetjoWBt9oBWiGEEEIIIYQQ+9TUqVMbugsHrKysLMaPH9/Q3RC7kJxArCYtWrTYfx3ZDy6//HLOPffcGtftajKqQ8nAgQMpLi5u6G6IWhwSwdkNGzYwduxYPv74Y0KhEIcffjhTpkxxZuhUSjF+/HgmT55McXExxx13HE8//TQdOnRo4J7vpTUz4OvHIVIKusvOlO12HkgdMyGEEEIIIYQQ+1lWVhZ33nlnQ3dD7EJylvvfg5ycHHJyJHlt4MCBDd0FsRMHfRSvqKiI4447Drfbzccff8zKlSt5+OGHyc7Odto8+OCDTJo0iWeeeYZ58+YRDAYZMmQIkUikAXu+FyIlpM17GG3GP+zAbKPD4Y/PQY+REpgVQgghhBBCCCGEEOIgcdBnzj7wwAO0atWKKVOmOMvatWvn3FdK8dhjj3H77bdz1llnAfDSSy/RtGlT3n33Xf785z9X22Y0GiUajTqPS0tLAXsGWMuy6utQ6mb7T/DhjXjKtoDHg9XzAuhxPhhuaOi+HUIsy0Ip1fCv9yFMxrj+yRjXPxnj+idjXP9kjPcPGef6dyCN8YHQByGEEEIcHA764Oz//vc/hgwZwp/+9CdmzZpFixYtuOKKK7j00ksBWLt2LQUFBQwaNMh5TmZmJn369GHu3Lk1Bmfvu+8+7rrrrmrLt2zZ0vDZtqaHTM1H3J9Hcd/rsBodAduKGrZPhyDLsigpKUEphS7ZyPVCxrj+yRjXPxnj+idjXP9kjPcPGef6dyCNcVlZWYPuXwghhBAHj4M+OPvTTz/x9NNPc8MNN/D3v/+dBQsWcM011+DxeBg9ejQFBQUANG3aNOV5TZs2ddb91q233soNN9zgPC4tLaVVq1Y0adKEjIyM+juYOrLOmEhxhUWTvBYN/ofnocqyLDRNo0mTJjLG9UTGuP7JGNc/GeP6J2Nc/2SM9w8Z5/p3II2xz+dr0P0LIYQQ4uBx0AdnLcuid+/eTJgwAYCePXuyYsUKnnnmGUaPHr1H2/R6vXi93mrLdV1v8D/0AMhsgRYtPHD6c4jSNE3GuJ7JGNc/GeP6J2Nc/2SM65+M8f4h41z/DpQxbuj9CyGEEOLgcdD/1dCsWTM6d+6csuzII49k/fr1AOTl5QGwefPmlDabN2921gkhhBBCCCGEODC88MILZGVl7fV27rzzTnr06LHX29lXNE3j3XffbehuNLgXXnhBZo4X4gB0oP5uDhw4kOuuu66hu1GvDvrg7HHHHUd+fn7KslWrVtGmTRvAnhwsLy+P6dOnO+tLS0uZN28e/fr12699FUIIIYQQQgixc+eddx6rVq1q6G7ssX0ZFG7bti2PPfbYPtlWUl0DHW+//TaDBw+mUaNGaJrG0qVLq7WJRCJceeWVNGrUiLS0NEaMGFEtMepAt2zZMkaOHEmrVq3w+/0ceeSRPP7449XazZw5k169euH1ejn88MN54YUXUtbfd999HHPMMaSnp5Obm8vw4cOrxSoA5s6dy8knn0wwGCQjI4MTTzyRcDjsrN++fTujRo0iIyODrKwsxowZQ3l5eY19X716Nenp6dW+zPjuu+8YMWIEbdu2RdO0Gt9DZWVlXHfddbRp0wa/30///v1ZsGDBrgcMiMfjjB07lq5duxIMBmnevDkXXnghGzduTGl35pln0rp1a3w+H82aNeOCCy5IaZOfn89JJ51E06ZN8fl8tG/fnttvv514PJ6ynTfffJNOnTrh8/no2rUrH330Ucr6urxXYddjvzOrVq3irLPOonHjxmRkZHD88cfzxRdf1Nh227ZttGzZEk3TKC4uTln3yiuv0L17dwKBAM2aNePiiy9m27ZtNW7n9ddfR9M0hg8fvlvHu337dq6++mo6duyI3++ndevWXHPNNZSUlNTpWA82mzZt4v/+7/844ogj0HW91vPbvngf1dc576APzl5//fV88803TJgwgdWrV/Pqq6/y3HPPceWVVwL2t5PXXXcd99xzD//73/9Yvnw5F154Ic2bN6/2BhdCCCGEEEII0bD8fj+5ubm1ro/FYvuxN79fFRUVHH/88TzwwAO1trn++ut5//33efPNN5k1axYbN27kj3/84z7vS32+5osWLSI3N5eXX36Z7777jttuu41bb72VJ554wmmzdu1ahg0bxkknncTSpUu57rrruOSSS/j000+dNrNmzeLKK6/km2++Ydq0acTjcQYPHkxFRYXTZu7cuQwdOpTBgwczf/58FixYwFVXXZVSCmXUqFF89913TJs2jQ8++IAvv/ySv/71r9X6HY/HGTlyJCeccEK1daFQiPbt23P//ffXesXwJZdcwrRp0/jPf/7D8uXLGTx4MIMGDWLDhg27HLNQKMTixYsZN24cixcv5u233yY/P58zzzwzpd1JJ53E1KlTyc/P56233mLNmjWcc845znq3282FF17IZ599Rn5+Po899hiTJ09m/PjxTpuvv/6akSNHMmbMGJYsWcLw4cMZPnw4K1ascNrU5b1al7HfmdNPP51EIsGMGTNYtGgR3bt35/TTT69xLqMxY8bQrVu3asu/+uorLrzwQsaMGcN3333Hm2++yfz5850J7atat24dN910U42v766Od+PGjWzcuJGJEyeyYsUKXnjhBT755BPGjBlTp2M92ESjUZo0acLtt99O9+7da2yzr95H9XbOU4eA999/Xx111FHK6/WqTp06qeeeey5lvWVZaty4capp06bK6/WqU045ReXn59d5+yUlJQpQJSUl+7rre8Q0TbVp0yZlmmZDd+WQJWNc/2SM65+Mcf2TMa5/Msb1T8Z4/5Bxrn8H0hjX1+eHcDisVq5cqcLhsLPMsiwVSpgNcrMsq079fv/991VmZqZKJBJKKaWWLFmiADV27FinzZgxY9SoUaOUUkpNmTJFZWZmOuvGjx+vunfvriZPnqzatm2rNE1TSilVVFSkxowZoxo3bqzS09PVSSedpJYuXVrteVVNnjxZderUSXm9XtWxY0f15JNPOuvWrl2rAPXWW2+pgQMHKr/fr7p166a+/vrrlG0899xzqmXLlsrv96vhw4erhx9+2OnvlClTFJBymzJlilJKKUBNnjxZDR8+XPn9fnX44Yer9957r9ZxGzBgQLVtJc2ePVsdf/zxyufzqZYtW6qrr75alZeXO+uffPJJdfjhhyuv16tyc3PViBEjlFJKjR49uto2165dW2sfqo7LkiVLUpYXFxcrt9ut3nzzTWfZ999/rwA1d+7cWrc3ZcoUNWDAgJ3us02bNuruu+9WF1xwgUpPT1ejR49WX3zxhQJUUVGR0y75XkoeQ/K988knn6hOnTqpYDCohgwZojZu3LjT/f3WFVdcoU466STn8S233KK6dOmS0ua8885TQ4YMqXUbhYWFClCzZs1ylvXp00fdfvvttT5n5cqVClALFixwln388cdK0zS1YcOGlLa33HKLOv/886v9vvxWmzZt1KOPPpqyLBQKKcMw1AcffJCyvFevXuq2226rdVs7M3/+fAWon3/+udY27733ntI0TcVisVrbXH/99er4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GDNmTMqVlolEgszMzJS2VWtFNmvWDLAz7zp16kR+fj5nn312Svtjjz22xoBTTapuOzkpUWFhYZ2em7Rs2TK+/fZbXnnlFWeZUgrLsli7di2nnnoqbdq0oX379gwdOpShQ4dy9tlnEwgEdms/Da1q9ujuCAQCTmAW7NewrmO8YsUKzjrrLMaPH8/gwYP3aP8AV155JStWrEjJzLQsC4DLLruMv/zlLwD07NmT6dOn8+9//5v77ruvTtu+9NJL+b//+7+UjMU98Z///IeLL76YFi1aYBgGvXr1YuTIkSxatGi3thOPxzn33HNRSvH0009XW3/zzTczZswYfv75Z+666y4uvPBCPvjgAzRtx/njjTfeoKysjGXLlnHzzTczceJEbrnllr06vqr2duyVUlx55ZXk5uYye/Zs/H4/zz//PGeccQYLFiygWbNm3HrrrRx55JGcf/75tW5n5cqVXHvttdxxxx0MGTKETZs2cfPNN3P55Zfzr3/9i7KyMi644AImT55M48aN98mxl5aWMmzYMDp37sydd965V9va2bll9erVhEIhTj311JTnxGIxJ4C7bNkyvvjiC9LS0qpte82aNYTDYWKxGH369HGW5+Tk0LFjx73q98FAgrNCCCGEEEIIcZDSNA2/UfcgaUMZOHAg//73v1m2bBlut5tOnToxcOBAZs6cSVFR0U6zZsEOZFZVXl5Os2bNUkojJNV0WXVytvvJkyenfPAHMAwj5XHVS66TAaRkcGdv/fZybk3Tdnvb5eXlXHbZZVxzzTXV1rVu3RqPx8PixYuZOXMmn332GXfccQd33nknCxYsqPWS8z2Rl5dHLBajuLg4ZbubN2/e66xcqP6aJy8TV2pHOY14PF7teTWNcdXn1GblypWccsop/PWvf+X2229PWZeXl1dtRvbNmzeTkZFRLWv2qquucibyqprxlwz0d+7cOaX9kUceyfr16539/DaQnEgk2L59uzOmM2bM4H//+x8TJ04EdgTmXS4Xzz33HBdffPEujxXgsMMOY9asWVRUVFBaWkqzZs0477zzaN++fZ2eDzsCsz///DMzZsyoMZO3cePGNG7cmCOOOIIjjzySVq1a8c033zjZlYBTWqNz586Ypslf//pXbrzxRgzDqHXsd+c9Vpex35kZM2bwwQcfUFRU5BzjU089xbRp03jxxRf529/+xowZM1i+fDn//e9/gR3v08aNG3Pbbbdx1113cd9993Hcccdx8803A/aXNcFgkBNOOIF77rmHzZs3s27dOs444wxn38nzg8vlIj8/P+WLh10pKytj6NChpKen884779RaTqKu0tPTaz23JM+xH374IS1atEh5XvLqhvLycs4444waJ9xq1qwZq1ev3qv+7cy+eB/V5zlPgrNCCCGEEEIIIepVsu7so48+6gRiBw4cyP33309RUVHK5et10atXLwoKCnC5XLRt23aX7Zs2bUrz5s356aefGDVq1J4cAgAdO3ZkwYIFKct++9jj8WCa5h7vY1fb6tWrFytXrtzp5ecul4tBgwYxaNAgxo8fT1ZWFjNmzOCPf/zjPuvf0UcfjdvtZvr06YwYMQKA/Px81q9fnxJ421eSmdObNm1yLiXfV5d+f/fdd5x88smMHj06pYZwUr9+/fjoo49Slk2bNi3lOJVSXH311bzzzjvMnDmTdu3apbRv27YtzZs3Jz8/P2X5qlWrOO2005z9FBcXs2jRIqeW6YwZM7Asy/lSYe7cuSmv33vvvccDDzzA119/XS0oVhfBYJBgMEhRURGffvopDz74YJ2elwzM/vjjj3zxxRfVsthrkgw0RqPRnbaJx+NYloVhGPTr14/p06c7ZTyg+tjvSl3GfmdCoRBAtTqyuq47x/TWW28RDoeddQsWLODiiy9m9uzZTkA1FApVq/ma/HJIKUWnTp1Yvnx5yvrbb7+dsrIyHn/88d2qD11aWsqQIUPwer3873//q1ZfeE/Vdm459dRT8Xq9rF+/vtYv23r16sVbb71F27Zta6x9e9hhh+F2u5k3bx6tW7cGoKioiFWrVu3yC7xd2Rfvo/o850lwVgghhBBCCCFEvcrOzqZbt2688sorPPHEEwCceOKJnHvuucTj8d3+4D1o0CD69evH8OHDefDBBzniiCPYuHEjH374IWeffXaNl8TfddddXHPNNWRmZjJ06FCi0SgLFy6kqKiIG264oU77vfrqqznxxBN55JFHOOOMM5gxYwYff/xxyiXabdu2Ze3atSxdupSWLVuSnp7uZI7trrZt2/Lll1/y5z//Ga/XS+PGjRk7dix9+/blqquu4pJLLiEYDLJy5UqmTZvGE088wQcffMBPP/3EiSeeSHZ2Nh999BGWZTmXBrdt25Z58+axbt060tLSyMnJqXHyou3bt7N+/Xo2btwI4AS28vLyyMvLIzMzkzFjxnDDDTeQk5NDRkYGV199Nf369aNv3757dLw7c/jhh9OqVSvuvPNO7r33XlatWsXDDz+819tdsWIFJ598MkOGDOGGG25wakcahuEEhC+//HKeeOIJbrnlFi6++GJmzJjB1KlTU+rSXnnllbz66qu89957pKenO9vJzMzE7/ejaRo333wz48ePp3v37vTo0YMXX3yRH374wcm2PPLIIxk6dCiXXnopzzzzDPF4nKuuuoo///nPNG/e3GlT1cKFC9F13altC/al5CtXrnTub9iwgaVLl5KWluYE9T/99FOUUnTs2JHVq1dz880306lTJ+ey/52Jx+Occ845LF68mA8++ADTNJ3jzcnJwePxMG/ePBYsWMDxxx9PdnY2a9asYdy4cRx22GFOIOuVV17B7XbTtWtXvF4vCxcu5NZbb+W8885zsjyvvfZaBgwYwMMPP8ywYcN4/fXXWbhwIc8995zTn129V+sy9jvTr18/srOzGT16NHfccQd+v5/Jkyezdu1apz71bzNat27d6rxeySzLM844g0svvZSnn37aKWtw3XXXceyxxzqvb9XXEXZcCVB1+a6Ot7S0lMGDBxMKhXj55ZcpLS2ltLQUsL/k+O3VAnW1s3NLeno6N910E9dffz2WZXH88cdTUlLCV199RUZGBqNHj+bKK69k8uTJjBw5kltuuYWcnBxWr17N66+/zvPPP09aWhpjxozh5ptvplGjRuTm5nLbbbfVeH76reQXNeXl5WzZsoWlS5fi8XicbOl98T6q13OeErtUUlKiAFVSUtLQXVFKKWWaptq0aZMyTbOhu3LIkjGufzLG9U/GuP7JGNc/GeP6J2O8f8g4178DaYzr6/NDOBxWK1euVOFweJ9ud3+59tprFaC+//57Z1n37t1VXl5eSrspU6aozMxM5/H48eNV9+7dq22vtLRUXX311ap58+bK7XarVq1aqVGjRqn169fX+rxXXnlF9ejRQ3k8HpWdna1OPPFE9fbbbyullFq7dq0C1JIlS5z2RUVFClBffPGFs+y5555TLVq0UH6/Xw0fPlzdc889KccQiUTUiBEjVFZWlgLUlClTlFJKAeqdd95J6U9mZqazviZz585V3bp1U16vV1X9+D5//nx16qmnqrS0NBUMBlW3bt3Uvffeq5RSavbs2WrA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zN2fiJlIqWhoaJZ9zRSNLNdUylxS0SzNFbUsTUsrd0vLXHM3ldJU3MVUkBRQFNn3mfP7g7g5ATIo46C+X88zj3DPued8zuHOIJ85cy4REREREZEJMDlLREREREREREREZAJMzhIRERERERERERGZAJOzRERERERERERERCbA5CwRERERERERERGRCTA5S0RERERERERERGQCTM4SERERERERERERmQCTs0REREREREREREQmwOQsERERERERERERkQkwOUtERERERERERERkAkzOEhEREREREREREZkAk7NEREREREREREREJsDkLBEREREREREREZEJMDlLREREREREREREZAJMzhIRERERERERERGZAJOzRERERERERERERCbA5CwRERERERERERGRCTA5S0RERERERERERGQCTM4SERERERERERERmQCTs0REREREREREREQmwOQsERERERERERERkQkwOUtERERERERERERkAkzOEhEREREREREREZkAk7NEREREREREREREJsDkLBEREREREREREZEJMDlLREREREREREREZAJMzhIRERERERERERGZAJOzRERERERERERERCbA5CwRERERERERERGRCTA5S0RERERERERERGQCTM4SERERERERERERmQCTs0REREREREREREQmwOQsERERERERERERkQkwOUtERERERERERERkAkzOEhEREREREREREZkAk7NEREREREREREREJsDkLBEREREREREREZEJMDlLREREREREREREZAJMzhIRERERERERERGZAJOzRERERERERERERCbA5CwRERERERERERGRCTA5S0RERERERERERGQCTM4SERERERERERERmQCTs0REREREREREREQmwOQsERERERERERERkQkwOUtERERERERERERkAkzOEhEREREREREREZkAk7NEREREREREREREJsDkLBEREREREREREZEJMDlLREQmsWLFCshkMsTHx5s6FCIiIiIiIiKTYHKWiOgJd+7cObzxxhuoVasWlEol3Nzc0LdvX5w7d87UoZmUVqvF8uXL0aFDBzg4OECpVMLb2xsDBw7En3/+aerwAADnz5/HlClTDE5gT5kyBTKZTHrI5XK4urqiW7du+P3336s0tnv7kclk0Gg0CAwMxNatW6u0HyIiIiIioieZ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/4bs47rrrqtzrkOGDAlps23bNoYPH05sbCxWq5VzzjmHZcuWHdO51HccRVHo3Llzk8/3VPLKK6/Qr18/rFZrg7/XsrIyrrnmGqxWK1FRUYwZMwaHI3QOm/Xr13PuuediMplITU3lqaeeClnv8/mYOnUqmZmZmEwmunbtypdfftmcp9YiyeSsJEkAmLQaxqfFhyxbV+UM/l9F8PaBUtQGatVKkiRJkiRJkvTnrFu3josuuoghQ4awdu1a3n//fT799FP+85//HPdj+Xy+477PWj///DNdunTho48+Yv369YwePZpRo0axaNGikDZXXXUVY8aMYe3atVx66aVceumlbNy4EQCn08lvv/3Ggw8+yG+//cbHH39Mbm4ul1xyScixPvroI0aOHMno0aNZt24dP/30E1dffXVwfSAQYOjQoXi9Xn7++WfefPNN3njjDR566KE6/a6oqGDUqFGcf/75ddZVV1fTtWtXXnjhhXrPWQjBpZdeyq5du/jf//7H2rVrSU9PZ+DAgVRXVx81ZgcOHODAgQM8/fTTbNy4kTfeeIMvv/ySMWPGBNusWbOG+Ph45s+fz6ZNm7j//vu59957mT17dp395ebmUlBQEPyJj//9vd7777/PxIkTmTx5Mr/99htdu3Zl8ODBFBcXB9vccccdfPbZZyxYsIDvvvuOAwcOcPnll9fb9zFjxtClS5ejnuORrrzySpYuXcprr71Gbm4u7777LllZWcH1NpuN+++/nxUrVgSvo9GjR/PVV1+F7GfIkCEh5/ruu++GrL/44ovx+/18++23rFmzhq5du3LxxRfXSVg3di6zZs0KOca+ffuw2WxcccUVx3zepwKn08mQIUO47777GmxzzTXXsGnTJpYsWcKiRYv4/vvvufHGG4PrKysrGTRoEOnp6axZs4bp06czZcoUXnnllWCbBx54gDlz5vD888+zefNmbrrpJi677DLWrl3brOfX4gjpqOx2uwCE3W4/2V0RQggRCAREQUGBCAQCJ7srf1l/1xgvKCgVF6ze2ujP0oN1nwcry6vEGrvjmI71d43xiSRj3PxkjJufjHHzkzE+MWScm19LinFzvX9wuVxi8+bNwuVyBZepqir8ftdJ+VFVtcl9DwQCYtq0aSIzM1MYDAaRmpoqHn300eD69evXi/79+wuTySRsNpsYO3asqKqqCq7v27evmDBhQsg+hw8fLrKzs4OP09PTxWOPPSZGjx4twsPDRWpqqpgzZ05wPRDy07dv3zr93L17d512tccIBALi8ccfFxkZGcJkMokuXbqIBQsWBLctKysTV199tYiNjRUmk0m0bdtWvP76600+thBC3HvvvaJXr14hyz799FNhMplEZWVlg/GdPHlySCzqA4gXX3xRDBs2TISFhYnJkyeLefPmicjIyJB2CxcuFIenCiZPniy6du0q3nrrLZGeni6sVqv417/+1Wh/6nPRRReJ0aNHBx9feeWVYujQoSFtevfuLf797383uI9Vq1YJQOzdu1cIIYTP5xOtWrUSr776aoPbfP7550Kj0YjCwsLgspdeeklYrVbh8XhC2v7rX/8SDzzwQPCcGwKIhQsXhizLzc0VgNi4cWNwWSAQEHFxcWLu3LkN7qsxH3zwgTAYDMLn8zXY5uabbxb9+/cPPl62bJkARHl5eYPbnHHGGWL8+PEh/UxOThZPPPGEEEKIiooKodfrQ67vLVu2CECsWLEiZF8vvvii6Nu3r1i6dOlRj3u4L774QkRGRorS0tImta/VvXt38cADDwQfZ2dni+HDhzfYvqSkRADi+++/Dy6rrKwUgFiyZMkfPpeFCxcKRVHEnj17Gu1venq6WLZsWYPr9+zZIy6++GIRFRUlwsLCRKdOncTixYuD6zds2CCGDBkiLBaLiI+PF9dee60oKSkJrj/afUkIIRYvXizatWsnTCaT6Nevn5g3b16Tf1cNXU+bN28WgFi9enVw2RdffCEURRH5+flCiJp4RkdHhzzPJk2aJLKysoKPk5KSxOzZs0P2ffnll4trrrnmqH1rTH1/L1sy3YlJAUuSdCpINhqO2mZtpZMBMVYAqvwB3i8s44PCMgA+69EOo0YOyJckSZIkSTpRVNXDmt/+dVKO3bPH+2i1pia1vffee5k7dy4zZszgnHPOoaCggK1btwI1IxIHDx5Mnz59WL16NcXFxdxwww3ccsstvPHGG8fUp2eeeYZHHnmE++67jw8//JBx48bRt29fsrKyWLVqFWeccQbffPMNnTt3xmCo+9o3NTWVjz76iBEjRpCbm4vVasVsNgPwxBNPMH/+fF5++WXatWvH999/z7XXXktcXBx9+/blwQcfZPPmzXzxxRfExsayY8cOXC4XQJOODTVf8zaZQmNqNptxu92sWbOGfv36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ly9HURQqKipO+LEBbrvtNnr27InRaKRbt271tlm/fj3nnnsuJpOJ1NRUnnrqqePW1xNl7ty5nHvuuURHRxMdHc3AgQNZtWpVSBshBA899BBJSUmYzWYGDhzI9u3bg+v37NnDmDFjaN26NWazmczMTCZPnozX662zn6effpr27dtjNBpp1aoVjz32WEib5cuX06NHD4xGI23btm00Wfbkk0+iKAq33357yPJXXnmFfv36YbVaG7yGfvvtNy644AKioqKIiYnhxhtvxOFwNClm69at46qrriI1NRWz2UzHjh2ZNWtWSJsff/yRs88+m5iYGMxmMx06dGDGjBkhbV566SW6dOmC1WrFarXSp08fvvjii5A2breb8ePHExMTQ3h4OCNGjKCoKHSOkKZcq02JfWPefvttunbtSlhYGElJSVx//fWUlpbW2/a9995DURQuvfTSkOUOh4NbbrmFlJQUzGYznTp14uWXX26wvxdeeCGKovDJJ58c0/kuX76c4cOHk5SUhMVioVu3brz99ttNPtdTzccff8ygQYOIiYlp8P52vK6jv8I9rzEyOStJUoulKAoDY6ykm41Nam/UaBgSF0lmmIkeVgttwoxoFIUXOqaHtAvTaojQaekfY+WqBsosAAyLi6J9mIlzoxsvmQCwwl73BZVfCFyqyqv7S+qMxs2pcnL/tv04DyuN4FcFN2zaE9Ju6s4D/DNnBzdu2sN/tu2vGZkbCHDjpr1ctW5nnWP+UlFNQAjEYYlcSZIkSZIk6dRy/fXX869//avedZWVlQwaNIj09HTWrFnD9OnTmTJlCq+88spx7YMQAr/ff1z3ebjly5dz1VVXsWzZMlasWEFqaiqDBg0iP//3QQxPPfUUzz33HC+//DIrV67EYrEwePBg3O6aEmBbt25FVVXmzJnDpk2bmDFjBi+//DL33XdfyLEmTJjAq6++ytNPP83WrVv59NNPOeOMM4Lrd+/ezdChQ+nfvz85OTncfvvt3HDDDXz11Vd1+r169WrmzJlDly5d6qxzOp0MGTKkzvFrHThwgIEDB9K2bVtWrlzJl19+yaZNm7juuuuaFLM1a9YQHx/P/Pnz2bRpE/fffz/33nsvs2fPDraxWCzccsstfP/992zZsoUHHniABx54IOT6SElJ4cknn2TNmjX8+uuvDBgwgOHDh7Np06ZgmzvuuIPPPvuM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IiIikgAqzoqIiIiIiIiIiIgkgDvRAewLjDEAVFVVJTiSBo7jUF1djd/vx7ZVX28JynHLU45bnnLc8pTjlqcctzzleM9Qnlve3pTjxr8bGv+OEBEREdkeFWd3QXV1NQBFRUUJjkRERERERPYV1dXVpKenJzoMERER2YtZRh/n7pTjOKxbt47U1FQsy0p0OFRVVVFUVMT3339PWlpaosP5RVKOW55y3PKU45anHLc85bjlKcd7hvLc8vamHBtjqK6uprCwMOGzeEVERGTvppmzu8C2bdq0aZPoMLaSlpaW8Deev3TKcctTjluectzylOOWpxy3POV4z1CeW97ekmPNmBUREZFdoY9xRURERERERERERBJAxVkRERERERERERGRBFBxdh/k8/mYMGECPp8v0aH8YinHLU85bnnKcctTjluectzylOM9Q3luecqxiIiI7It0QTARERERERERERGRBNDMWREREREREREREZEEUHFWREREREREREREJAFUnBURERERERERERFJABVnRURERERERERERBJAxVkRERERERERERGRBFBxVkRERERERERERCQBVJwVERERERERERERSQAVZ0VEREREREREREQSQMVZERERERERERERkQRQcVZEREREREREREQkAVScFREREREREREREUkAFWdFREREREREREREEkDFWREREREREREREZEEUHFWREREREREREREJAFUnBURERERERERERFJABVnRURERERERERERBJAxVkRERERERERERGRBFBxVkRERERERERERCQBVJwVERERERERERERSQAVZ0VEREREREREREQSQMVZERERERERERERkQRQcVZEREREREREREQkAVScFREREREREREREUkAFWdFREREREREREREEkDFWREREREREREREZEEUHFWREREREREREREJAFUnBURERERERERERFJABVnRURERERERERERBJAxVkRERERERERERGRBFBxVkRERERERERERCQBVJwVERERERERERERSQAVZ0VEREREREREREQSQMVZERERERERERERkQRQcVZEREREREREREQkAVScFREREREREREREUkAFWdFREREREREREREEkDFWREREREREREREZEEUHFWREREREREREREJAFUnBURERERERERERFJABVnRURERERERERERBJAxVkRERERERERERGRBFBxVkRERERERERERCQBVJwVERERERERERERSQAVZ0VEREREREREREQSQMVZERERERERERERkQRQcVZEREREREREREQkAVScFREREREREREREUkAFWdFREREREREREREEkDFWREREREREREREZEEUHFWREREREREREREJAFUnBURERERERERERFJABVnRURERERERERERBJAxVkRERERERERERGRBFBxVkRERERERERERCQBVJwVERERERERERERSQAVZ0VEREREREREREQSQMVZERERERERERERkQRQcVZEREREREREREQkAVScFREREREREREREUkAFWdFREREREREREREEkDFWREREREREREREZEEUHFWREREREREREREJAFUnBURERERERERERFJABVnRURERERERERERBJAxVkRERERERERERGRBFBxVkRERERERERERCQBVJwVERERERERERERSQAVZ0VEREREREREREQSQMVZERERERERERERkQRQcVZEREREREREREQkAVScFREREREREREREUkAFWdFREREREREREREEkDFWREREREREREREZEEUHFWREREREREREREJAFUnBURkV+s4447juOOOy7RYYiIiIiIiIhsk4qzIiJ7sSeffBLLsrAsizlz5my13xhDUVERlmUxZMiQBETYEMP//d//ceyxx5KRkUFSUhIHH3wwN998M7W1tQmJaW/y+uuvY1kWhYWFOI6T6HC26bjjjos/zizLwuv10qFDB0aPHs3333/fbOO89957TcZxuVzk5eXx+9//nmXLljXbOCIiIiIiIvsKd6IDEBGRnfP7/UybNo1jjjmmyfb333+fNWvW4PP5EhJXLBbj3HPPZfr06fTt25cbb7yRpKQk/vvf/3LTTTcxY8YM3n77bVq1apWQ+PYGU6dOpX379qxcuZJ3332XAQMGJDqkbWrTpg233347AOFwmKVLl/LII4/w1ltvsWzZMpKSkpptrMsuu4wjjjiCSCTCF198wSOPPMJ7773H4sWLyc/Pb7ZxRERERERE9nYqzoqI7ANOOukkZsyYweTJk3G7f3jpnjZtGj169GDTpk0JievOO+9k+vTpXHXVVdx1113x7aNHj+ass87i1FNPZcSIEbzxxht7NK66urpmLSb+VLW1tfzrX//i9ttvZ8qUKUydOnWXirOO4xAOh/H7/Xsgygbp6emcf/75TbZ16NCBsWPH8uGHH3L88cc321h9+/bl97//ffz2/vvvz8UXX8zTTz/NNddc02zjiIiIiIiI7O20rIGIyD7gnHPOobS0lFmzZsW3hcNhXnjhBc4999xtHnP33XfTp08fsrOzCQQC9OjRgxdeeKFJmylTpmBZFk888UST7bfddhuWZfH6669vN6b6+nruuusuunTpEp9xuaWTTz6Z4cOH8+abb/Lxxx8DMGTIEPbbb79t9te7d2969uzZZNszzzxDjx49CAQCZGVlMXTo0K2+Zn/cccdx0EEHsWDBAo499liSkpL485//vM0xwuEw48ePp0ePHqSnp5OcnEzfvn2ZPXt2k3YrV67Esizuvvtu7rvvPtq1a0cgEKBfv34sXrx4uzn5sZkzZ1JfX8+ZZ57J0KFDeemllwgGg1u1syyLsWPHMnXqVA488EB8Ph9vvvkmAGvXruXCCy+kVatW+Hw+DjzwwK3ur109r93VOIu18QOB2bNnY1kWM2fO3KrttGnTsCyLuXPn7vY4ffv2BeDbb7+NbxsxYgTt27ffqu2NN96IZVlNtjXm7+WXX+aggw6K56kxhyIiIiIiInsrFWdFRPYB7du3p3fv3jz77LPxbW+88QaVlZUMHTp0m8fcf//9HHbYYdx8883cdtttuN1uzjzzTF577bV4m5EjRzJkyBCuvPLKeNFz0aJF3HTTTYwaNYqTTjppuzHNmTOH8vJyzj333Cazebc0bNgwAF599VUAzj77bFasWMEnn3zSpN2qVav4+OOPm5zLrbfeyrBhw+jcuTP33nsv48aN45133uHYY4+loqKiyfGlpaWceOKJdO/enUmTJtG/f/9txlNVVcXjjz/Occcdx8SJE7nxxhspKSlh4MCBLFy4cKv2Tz/9NJMnT2bMmDFcf/31LF68mN/85jds2LBhu3nZ0tSpU+nfvz/5+fkMHTqU6upq/v3vf2+z7bvvvssVV1zB2Wefzf3330/79u3ZsGEDRx11FG+//TZjx47l/vvvp1OnTowaNYpJkyb95PPallgsxqZNm9i0aRPr16/n3XffZcKECXTq1Imjjz4aaCiEFxUVMXXq1G2ea8eOHendu/cujbellStXApCZmbnbxzaaM2cOl1xyCUOHDuXOO+8kGAxyxhlnUFpa+pP7FBERERERaXFGRET2WlOmTDGA+eSTT8yDDz5oUlNTTV1dnTHGmDPPPNP079/fGGNMu3btzODBg5sc29iuUTgcNgcddJD5zW9+02T7+vXrTVZWljn++ONNKBQyhx12mGnbtq2prKzcYWyTJk0ygJk5c+Z225SVlRnAnH766cYYYyorK43P5zN/+tOfmrS78847jWVZZtWqVcYYY1auXGlcLpe59dZbm7RbtGiRcbvdTbb369fPAOaRRx7Zavx+/fqZfv36xW9Ho1ETCoWatCkvLzetWrUyF154YXzbihUrDGACgYBZs2ZNfPu8efMMYK644ortnnOjDRs2GLfbbR577LH4tj59+phTTjllq7aAsW3bLFmypMn2UaNGmYKCArNp06Ym24cOHWrS09Pj9/Guntf2NObwxz9du3Y13333XZO2119/vfH5fKaioiK+bePGjcbtdpsJEybscJzZs2cbwDzxxBOmpKTErFu3zrz55pumU6dOxrIsM3/+/Hjb4cOHm3bt2m3Vx4QJE8yP374Axuv1mm+++Sa+7fPPPzeAeeCBB3Z6/iIiIiIiIomimbMiIvuIs846i/r6el599VWqq6t59dVXt7ukAUAgEIj/v7y8nMrKSvr27cunn37apF1+fj4PPfQQs2bNom/fvixcuJAnnniCtLS0HcZTXV0NQGpq6nbbNO6rqqoCIC0tjRNPPJHp06djjIm3e/755znqqKNo27YtAC+99BKO43DWWWfFZ3Nu2rSJ/Px8OnfuvNXX9X0+HyNHjtxhvAAulwuv1ws0rOtaVlZGNBqlZ8+eW+UF4NRTT6V169bx20ceeSS9evXa4XIPjZ577jls2+aMM86IbzvnnHN44403KC8v36p9v3796NatW/y2MYYXX3yRk08+GWNMkzwMHDiQysrKeMy7e17b0r59e2bNmsWsWbN44403mDRpEpWVlZx44omUlJTE2w0bNoxQKNRkiYznn3+eaDS61Zq123PhhReSm5tLYWEhgwYNorKykv/7v//jiCOO2KXjt2XAgAF07NgxfvuQQw4hLS2N77777if3KSIiIiIi0tJ0QTARkX1Ebm4uAwYMYNq0adTV1RGLxZpcVOnHXn31VW655RYWLlxIKBSKb//xep0AQ4cO5ZlnnuG1115j9OjR/Pa3v91pPI2F18Yi7bZsq4B79tln8/LLLzN37lz69OnDt99+y4IFC5p8Tf/rr7/GGEPnzp232a/H42lyu3Xr1vHi5M489dRT3HPPPXz55ZdEIpH49g4dOmzVdlvjd+nShenTp+90nGeeeYYjjzyS0tLS+FfrDzvsMMLhMDNmzGD06NFN2v94/JKSEioqKnj00Ud59NFHtznGxo0bf9J5bUtycnKTi5UNGjSIY445hp49e3LHHXdwzz33AHDAAQdwxBFHMHXqVEaNGgU0LGlw1FFH0alTp10aa/z48fTt25eamhpmzpwZL2T/HI2F/S1lZmZusxAuIiIiIiKyt1BxVkRkH3Luuedy0UUXUVxczIknnkhGRsY22/33v//ld7/7Hcceeyx///vfKSgowOPxMGXKFKZNm7ZV+9LSUv73v/8BsHTpUhzH2WmxrGvXrgB88cUXnHrqqdts88UXXwA0mRF68sknk5SUxPTp0+nTpw/Tp0/Htm3OPPPMeBvHcbAsizfeeAOXy7VVvykpKU1ubzlLeEeeeeYZRowYwamnnsrVV19NXl4eLpeL22+/vcnFqH6ur7/+Or6u7rYKvFOnTt2qOPvjc3AcB4Dzzz+f4cOHb3OcQw45BGi582q8wNgHH3zQZPuwYcO4/PLLWbNmDaFQiI8//pgHH3xwl/s9+OCD44XgU089lbq6Oi666CKOOeYYioqKgG1/iAANa+Nuy7YeJ0CTGdoiIiIiIiJ7GxVnRUT2Iaeddhr/7//9Pz7++GOef/757bZ78cUX8fv9vPXWW/h8vvj2KVOmbLP9mDFjqK6u5vbbb+f6669n0qRJXHnllTuM5ZhjjiEjI4Np06bxl7/8ZZvFsaeffhqAIUOGxLclJyczZMgQZsyYwb333svzzz9P3759KSwsjLfp2LEjxhg6dOhAly5ddhjH7njhhRfYb7/9eOmll5oU/yZMmLDN9l9//fVW27766ivat2+/w3GmTp2Kx+Ph//7v/7bKy5w5c5g8eTKrV6/e5mzPRrm5uaSmphKLxZrMaN2W3T2v3RGLxaipqWmybejQoVx55ZU8++yz1NfX4/F4OPvss3/yGHfccQczZ87k1ltv5ZFHHgEaZr3++MJv0HDxOBERERERkV8KrTkrIrIPSUlJ4eGHH+bGG2/k5JNP3m47l8uFZVlNZhmuXLmSl19+eau2L7zwAs8//zx33HEH1113HUOHDuWGG27gq6++2mEsSUlJXHXVVSxfvpy//OUvW+1/7bXXePLJJxk4cCBHHXVUk31nn30269at4/HHH+fzzz/fqrB3+umn43K5uOmmm7aa+WiMiS8TsLsaC6Vb9jlv3jzmzp27zfYvv/wya9eujd+eP38+8+bN48QTT9zhOFOnTqVv376cffbZ/P73v2/yc/XVVwPw7LPP7jTWM844gxdffJHFixdvtX/LdWB397x21ezZs6mpqeHQQw9tsj0nJ4cTTzyRZ555hqlTpzJo0CBycnJ+8jgdO3bkjDPO4Mknn6S4uDi+rbKyMj77GmD9+vXMnDnzJ48jIiIiIiKyt9HMWRGRfcz2vuK+pcGDB3PvvfcyaNAgzj33XDZu3MhDDz1Ep06dmhS7Nm7cyMUXX0z//v0ZO3YsAA8++CCzZ89mxIgRzJkzZ4fLG1x33XV89tlnTJw4kblz53LGGWcQCASYM2cOzzzzDF27duWpp57a6riTTjqJ1NRUrrrqqngRcksdO3bklltu4frrr2flypWceuqppKamsmLFCmbOnMno0aO56qqrdjVlcUOGDOGll17itNNOY/DgwaxYsYJHHnmEbt26bTU7FKBTp04cc8wxXHzxxYRCISZNmkR2djbXXHPNdseYN28e33zzTTyfP9a6dWsOP/xwpk6dyrXXXrvDeO+44w5mz55Nr169uOiii+jWrRtlZWV8+umnvP3225SVlf2k89qWyspKnnnmGQCi0SjLly/n4YcfJhAIcN11123VftiwYfE1j//2t7/t0hg7cvXVVzN9+nQmTZrEHXfcwdChQ7n22ms57bTTuOyyy6irq+Phhx+mS5cuu3yRMxERERERkb2dZs6KiPwC/eY3v+Gf//wnxcXFjBs3jmeffZaJEydy2mmnNWnXWHScMmVK/Ovw2dnZPProo8ydO5e77757h+O4XC6mT5/OlClTiMVi/PWvf+Wyyy5jwYIFTJgwgXnz5tGqVautjvP7/fzud7+jurqa/v37k5eXt1Wb6667jhdffBHbtrnpppu46qqreOWVVzjhhBP43e9+95PyMmLECG677TY+//xzLrvsMt566y2eeeYZevbsuc32w4YN49JLL+XBBx/k1ltv5cADD+Tdd9+loKBgu2NMnToVYIczm08++WQWLVrUpFC+La1atWL+/PmMHDmSl156ibFjx3L//fdTVlbGxIkTf/J5bcuaNWu44IILuOCCC7jwwgt59NFH6devH3PmzKF79+7bPIfMzEzS09N/8v2xpZ49e3Lcccfx8MMPU1lZSXZ2NjNnziQpKYlrrrmGp556ittvv32HeRUREREREdnXWEZXyhAREWli5cqVdOjQgbvuuusnzdD9NYhGoxQWFnLyySfzz3/+M9HhiIiIiIiI7JM0c1ZERER228svv0xJSQnDhg1LdCgiIiIiIiL7LK05KyIiIrts3rx5fPHFF/ztb3/jsMMOo1+/fokOSUREREREZJ+lmbMiIiKyyx5++GEuvvhi8vLyePrppxMdjoiIiIiIyD5Na86KiIiIiIiIiIiIJIBmzoqIiIiIiIiIiIgkgIqzIiIiIiIiIiIiIgmgC4LtAsdxWLduHampqViWlehwRERERERkL2aMobq6msLCQmxb82FERERk+1Sc3QXr1q2jqKgo0WGIiIiIiMg+5Pvvv6dNmzaJDkNERET2YgktzsZiMW688UaeeeYZiouLKSwsZMSIEdxwww3xGarGGCZMmMBjjz1GRUUFRx99NA8//DCdO3eO91NWVsall17Kv//9b2zb5owzzuD+++8nJSUl3uaLL75gzJgxfPLJJ+Tm5nLppZdyzTXX7FKcqampQMObq7S0tGbMwE/jOA4lJSXk5ubqk/gWohy3POW45SnHLU85bnnKcctTjvcM5bnl7U05rqqqoqioKP53hIiIiMj2JLQ4O3HiRB5++GGeeuopDjzwQP73v/8xcuRI0tPTueyyywC48847mTx5Mk899RQdOnTgr3/9KwMHDmTp0qX4/X4AzjvvPNavX8+sWbOIRCKMHDmS0aNHM23aNKDhzdEJJ5zAgAEDeOSRR1i0aBEXXnghGRkZjB49eqdxNhaK09LS9pribDAYJC0tLeFvPH+plOOWpxy3POW45SnHLU85bnnK8Z6hPLe8vTHHWhJNREREdiahxdmPPvqIU045hcGDBwPQvn17nn32WebPnw80zJqdNGkSN9xwA6eccgoATz/9NK1ateLll19m6NChLFu2jDfffJNPPvmEnj17AvDAAw9w0kkncffdd1NYWMjUqVMJh8M88cQTeL1eDjzwQBYuXMi99967S8VZERERERERERERkeaW0OJsnz59ePTRR/nqq6/o0qULn3/+OXPmzOHee+8FYMWKFRQXFzNgwID4Menp6fTq1Yu5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fW5alsXLL7+c6DD2airO7oOyPW728zVcy+3jypoER9OyAl2zsVwWkY11RDY0nSnc9EJg6bvVb1ZBMmk5AWJRh9VLypot3m1xWRbXdsgnx+Pm+2CYp9ZuatHxRERERERk3/Dkk0+SkZHRrH2+9957WJZFRUXFDtsFg0FGjBjBwQcfjNvt5tRTT23WOPaUl156ieOPP57c3FzS0tLo3bs3b7311lbtHnroIdq3b4/f76dXr17Mnz8/vq+srIxLL72U/fffn0AgQNu2bbnsssuorKzcqp8nn3ySQw45BL/fT15eHmPGjGmy/4svvqBv3774/X6Kioq48847txv7c889h2VZW+X+pZde4oQTTiA7OxvLsli4cOFWx3777becdtpp8fM+66yz2LBhw06y1WDlypWMGjWKDh06EAgE6NixIxMmTCAc/uG6Nu+99x6nnHIKBQUFJCcn0717d6ZOnbrb51JTU8PYsWNp06YNgUCAbt268cgjjzRpEwwGGTNmDNnZ2aSkpHDGGWc0OZfPP/+cc845h6KiIgKBAF27duX+++/fpXNtNHXqVA499FCSkpIoKCjgwgsvpLT0h0lgkUiEm2++mY4dO+L3+zn00EN58803m/TxwQcfcPLJJ1NYWLjdguOGDRsYMWIEhYWFJCUlMWjQIL7++uttxmSM4cQTT9xmX6tXr2bw4MEkJSWRl5fH1VdfTTT6y5yctyt5NcYwfvx4CgoKCAQCDBgwYKu8lpWVcd5555GWlkZGRgajRo2ipuaHmtne/Jqn4uw+qmeSF4D5v/B1Z+2AG1+nDADqvmha1Hx384XA2vq9HJgS2K1+Lcui42G5AHz32UaMaZkLgzXK8Lj5U/t8AF7ZWMGaX/DF3EREREREfklisRiO88v79lssFiMQCHDZZZcxYMCAFh0rEom0WN8ffPABxx9/PK+//joLFiygf//+nHzyyXz22WfxNs8//zxXXnklEyZM4NNPP+XQQw9l4MCBbNy4EYB169axbt067r77bhYvXsyTTz7Jm2++yahRo5qMde+99/KXv/yF6667jiVLlvD2228zcODA+P6qqipOOOEE2rVrx4IFC7jrrru48cYbefTRR7eKe+XKlVx11VX07dt3q321tbUcc8wxTJw4cZvnXFtbywknnIBlWbz77rt8+OGHhMNhTj755F16rH755Zc4jsM//vEPlixZwn333ccjjzzCn//853ibjz76iEMOOYQXX3yRL774gpEjRzJs2DBeffXV3TqXK6+8kjfffJNnnnmGZcuWMW7cOMaOHcsrr7wSb3PFFVfw73//mxkzZvD++++zbt06Tj/99Pj+BQsWkJeXxzPPPMOSJUv4y1/+wvXXX8+DDz6403MF+PDDDxk2bBijRo1iyZIlzJgxg/nz53PRRRfF29xwww384x//4IEHHmDp0qX88Y9/5LTTTmvyOKqtreXQQw/loYce2uY4xhhOPfVUvvvuO/71r3/x2Wef0a5dOwYMGEBt7da1m0mTJm3zujmxWIzBgwcTDof56KOPeOqpp3jyyScZP378Lp3vvmZneQW48847mTx5Mo888gjz5s0jOTmZgQMHEgwG423OO+88lixZwqxZs3j11Vf54IMPGD16dHz/nnzN221GdqqystIAprKyMtGhGGOMicVi5uOV35vj539pTl7wlQnFYokOqUWF19eY4smfmg0PfWaiNWFjjDGO45g/Ll5hjv/kS/NScdlP6jdUFzEvTPzEPH/rfLNpTXWTfbFYzKxfv97Emjm3f17+vTn+ky/NjV+vadZ+90UtlWP5gXLc8pTjlqcctzzleM9Qnlve3pTjlvr7ob6+3ixdutTU19fHtzmOY+rD0YT8OI6zy7H369fPjB071lx++eUmIyPD5OXlmUcffdTU1NSYESNGmJSUFNOxY0fz+uuvx4+JRqPmwgsvNO3btzd+v9906dLFTJo0qUk+unXrZi666KL4tm+++cakpKSYf/7zn9uN5Z577jEHHXSQSUpKMm3atDEXX3yxqa7+4e+BKVOmmPT0dPOvf/3LdO3a1bhcLrNixQoTDAbNn/70J1NYWGiSkpLMkUceaWbPnh0/btOmTWbo0KGmsLDQBAIBc9BBB5lp06ZtN47Zs2cboMnPhAkTjDFmp2OtXLnSDBkyxGRkZJikpCTTrVs389prr5kVK1Zs1efw4cN3ev8MHz7cnHLKKTtt19i2Mc5taYzhueeeM8cee6zx+XxmypQpZsKECebQQw9t0va+++4z7dq12yqOu+66y+Tn55usrCxzySWXmHA4vEuxNerWrZu56aab4rePPPJIM2bMmPjtWCxmCgsLze23377dPqZPn268Xq+JRCLGGGPKyspMIBAwb7/99naP+fvf/24yMzNNKBSKb7v2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IrIv+fDDD+nTpw+XXHIJhx12GJ06dYrP4NrShRdeyMEHH8xTTz3Ftddey7Jly7bb54IFC3Ach3vuuYejjjqKLl26sG7dup3GcthhhxGLxdi4cSOdOnVq8tP4h/+HH37IKaecwvnnn8+hhx7Kfvvtx1dffbXDfr1eL7FYbLfHAigqKuKPf/wjL730En/605/iXy1vXO/0x/0mWm5uLsXFxU0KtAsXLmyWvp999llGjhzJs88+Gy8CNvJ6vfTo0aPJ0giO4/DOO+80mdVXVVXFCSecgNfr5ZVXXtmq2HT00UcDxNcHBigrK2PTpk20a9cOaJgl+MEHHzQpOs+aNYv999+fzMxMDjjgABYtWsTChQvjP7/73e/o378/CxcujK9duztycnLIyMjg3XffZePGjfzud7/bpePWrl3LcccdR48ePZgyZco2Z9y+9957DB48mIkTJ261hMCunEskEiESiWzVt8vlihdye/TogcfjaXL/LF++nNWrVze5f5YsWUL//v0ZPnx4k5mbu6Kurm6bMQBbfWDg9/tp3bo10WiUF198cbtLD+xMeno6ubm5fP311/zvf/+L93PdddfxxRdfNMkbwH333RdftqR3794sWrSoSbFx1qxZpKWlNflw4KdIS0vj7LPP5rHHHuP555/nxRdfpKysjMMPP5zi4mLcbvdWrzuNM6MPP/xwli9fvtX+Tp06Yds2Xbt25fvvv2+yhMPHH3/8s+IF6NChA/n5+U0eI1VVVcybNy/+GOnduzcVFRUsWLAg3ubdd9/FcRx69er1s2NoaZo5u4/rlZHCZ9V1zKuo4fRWmYkOp0XZSR6+7JjMBqeG5PoY/bN+2oXAfszrd1PULYsVn2/i209LyGmT2iz97kiGx80Z+Zn837pSnly3iaMzU7A1e1ZEREREJK5z5848/fTTvPXWW3To0IH/+7//45NPPqFDhw7xNg899BBz587liy++oKioiNdee43zzjuPjz/+uMlFmRp16tSJSCTCAw88wMknn8yHH37II488stNYunTpwnnnncewYcPiF7kqKSnhnXfe4ZBDDmHw4MF07tyZF154gY8++ojMzEzuvfdeNmzYsMNiSvv27ampqeGdd97h0EMPJSkpaZfGGjduHCeeeCJdunShvLyc2bNnxy/U1K5dOyzL4tVXX+Wkk04iEAjEZ9z+2NKlSwmHw5SVlVFdXR0vFP146YjmcNxxx1FSUsKdd97J73//e958803eeOMN0tJ+3t9106ZNY/jw4dx///306tUrvr5kIBCIr7d75ZVXMnz4cHr27MmRRx7JpEmTqK2tja+f2liYraur45lnnqGqqoqqqiqgoajscrno0qULp5xyCpdffjmPPvooaWlpXH/99RxwwAH0798fgHPPPZebbrqJUaNGce2117J48WLuv//++MWv/H4/Bx10UJP4G2clbrm9rKyM1atXxz84aCwIN65NDDBlyhS6du1Kbm4uc+fO5fLLL+eKK65g//3332nOGguz7dq14+6776akpCS+r7H/2bNnM2TIEC6//HLOOOOMeF69Xi9ZWVm7dC5er5d+/fpx9dVXEwgEaNeuHe+//z5PP/009957L9BQxBw1ahRXXnklWVlZpKWlcemll9K7d+/4xcAWL17Mb37zGwYOHMiVV14Zj8XlcpGbm7vT8z355JO56KKLePjhh+PLGowbN44jjzwy/hX8efPmsXbtWrp3787atWu58cYbcRyHa665Jt5PTU0N33zzTfz2ihUrWLhwIVlZWbRt2xaAGTNmkJubS9u2bVm0aBGXX345p556anz5gC3vwy21bds2/tp2wgkn0K1bNy644ALuvPNOiouLueGGGxgzZkyTi8DtrnvvvZeCggIOO+wwbNtmxowZ5Ofnk5GRwYABA+jduzennnoqd955Z/yDq9dee43TTjuNnj17Mn78eIYMGULbtm35/e9/j23bfP755yxevJhbbrmFAQMG0KVLF4YPH85dd91FVVUVf/nLX3Ya187yalkW48aN45ZbbqFz58506NCBv/71rxQWFnLqqacC0LVrVwYNGsRFF13EI488QiQSYezYsQwdOrTJMgt78jVvtxjZqcrKSgOYysrKRIdijDEmFouZ9evXm1gsZr6vD5njP/nSnPi/5aY2Gkt0aC3u6v99a/q/9qm58/mFxok03/mWrq0xz98637ww8RMTqo80yXFLqYlGzemffm2O/+RL8+6mveOxtSftiRz/2inHLU85bnnKcctTjvcM5bnl7U05bqm/H+rr683SpUtNfX19s/a7J/Tr189cfvnlTba1a9fO3HfffU22AWbmzJnGGGOCwaAZMWKESU9PNxkZGebiiy821113nTn00EONMcYsW7bMBAIBM23atPjx5eXlpqio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0ISG5/UhhxyC3+8nLy8vPgFxd85l6tSpHHrooSQlJVFQUMCFF15IaWnpLp/zvuSll17ihBNOIDs7e7uF3F3J/erVqxk8eDBJSUnk5eVx9dVXE43+8E3o3X1M70kJXwxpyJAhLFq0iGAwyLJly7joooua7Lcsi5tvvpni4mKCwSBvv/02Xbp0adImKyuLadOmUV1dTWVlJU888QQpKSlN2hxyyCH897//JRgMsmbNGq699toWP7dEOCItCQv4tj5ESTiy0/Z7k5gxPLi6Yf3gE3PS2T955xdS8LROAQtiFSFiNeGdtt8drTqlABYl39dQWxFq1r53ZkhuOrkeD5siUf69sWKPji0iIiIiIj+IxWI4v8AJEx999BGHHHIIL774Il988QUjR45k2LBhvPrqq806jjGmSYGkub333nucc845zJ49m7lz51JUVMQJJ5zA2rVr423uvPNOJk+ezCOPPMK8efNITk5m4MCBBIMNywF++eWXOI7DP/7xD5YsWcJ9993HI488wp///OcmY11++eU8/vjj3H333Xz55Ze88sorHHnkkfH9K1asYPDgwfTv35+FCxcybtw4/vCHP2yzAPTJJ5/wj3/8g0MOOWSrfXV1dQwaNGir8RutW7eOAQMG0KlTJ+bNm8ebb77JkiVLGDFixC7lbMGCBeTl5fHMM8+wZMkS/vKXv3D99dfz4IMPxtt88MEHHH/88bz++ussWLCA/v37c/LJJ/PZZ5/t1rkMGzaM5cuXx78Nffrpp3PWWWc16ee8885jyZIlzJo1i1dffZUPPvigyWS6N954g/POO48//vGPLF68mL///e/cd999TeLdkeTkZMaOHcsHH3zAsmXLuOGGG7jhhhuaTOpr06YNd9xxBwsWLOB///sfv/nNbzjllFNYsmRJvM0VV1zBv//9b2bMmMH777/PunXrOP3005uMde+99/KXv/yF6667jiVLlvD2228zcODA3TqXDz/8kGHDhsW//T1jxgzmz5+/Vb3sl6K2tpZjjjmGiRMnbrfNznIfi8UYPHgw4XCYjz76iKeeeoonn3yS8ePHx9vszmN6jzOyU5WVlQYwlZWViQ7FGGNMLBYz69evN7FYbJv7L1+6yhz/yZfmtY3lezawn2lmcZk5/pMvzemffm0qwpFdPq70uS9N8eRPTd2y0maLpTHHs59ZZp6/db5Z8t+1zdb3rnpjY4U5/pMvze8/+9rURrd9X+/LdvY4lp9POW55ynHLU45bnnK8ZyjPLW9vynFL/f1QX19vli5daurr63/Y6DjGhOsS8+M4uxx7v379zNixY83ll19uMjIyTF5ennn00UdNTU2NGTFihElJSTEdO3Y0r7/+evyYaDRqLrzwQtO+fXvj9/tNly5dzKRJk5rko1u3buaiiy6Kb/vmm29MSkqK+ec//7ndWO655x5z0EEHmaSkJNOmTRtz8cUXm+rq6vj+KVOmmPT0dPOvf/3LdO3a1bhcLrNixQoTDAbNn/70J1NYWGiSkpLMkUceaWbPnh0/btOmTWbo0KGmsLDQBAIBc9BBB5lp06ZtN47Zs2cboMnPhAkTjDFmp2OtXLnSDBkyxGRkZJikpCTTrVs389prr5kVK1Zs1efw4cN34R5qcNJJJ5mRI0fusE2/fv3MlClTdnper7/+ujn88MONx+Mxs2fPNsOHDzennHJKk7aXX3656devX5O+L730UnP11VebzMxM06pVq3hOdlU0GjWpqanmqaeeMsYY4ziOyc/PN3fddVe8TUVFhfH5fObZZ5/dbj933nmn6dChQ/z20qVLjdvtNl9++eV2j7nmmmvMgQce2GTb2WefbQYOHNhkW3V1tencubOZNWuW6devn7n88su32V9jLsvLy5ts/8c//mHy8vKavN598cUXBjBff/31duPbkUsuucT0799/h226detmbrrppt06l+TkZPP000832ZaVlWUee+wxY0xDXgHzySefxPe/8cYbxrIss3Ztw9/h55xzjvn973/fpI/JkyebNm3aGGc3Xoe2dNppp5nzzz9/h20yMzPN448/boxpeMx4PB4zY8aM+P5ly5YZwMydO9cYY0xZWZkJBALm7bff3m6fu3Iud911l9lvv/22atO6desdxruz52ZZWZk599xzTU5OjvH7/aZTp07miSeeiO9fvXq1OfPMM016errJzMw0v/vd78yKFSua9PHYY4+ZAw44wPh8PrP//vubhx56qMn+efPmme7duxufz2d69OhhXnrpJQOYzz77bIexG2Pir18/brsruX/99deNbdumuLg43ubhhx82aWlpJhQKbXfMbT2md8c2fy//BAmfOSvN78jNSxvM24fWnS2PRHly80XALmyTQ7rHvcvHeos2rzvbzEsbALQ9qOHiXKsW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watUKvr27cuOHTuIj49n+/btpKen06FDh9vefd63vjP3DwjhwPp4Yo+kozM54tXbq4Ysl7iRMuNYosapjo/DtGrCAjx52s+dfTmFbLyay+mCYvZlF7AvuwAfjZKH3J15yN2JILvb35TvXkEax7ZH8nHtIPnZ9tQlH9emDWazjiNHn6i19q6nbZvVKBR2N8/4N9988w1Tp07l0KFDrF69mnHjxrFu3ToGDRrEf//7X+bNm8eIESNISEjA3t4es9lMYGAga9euxcPDg/379/P888/j5+fHkCFDsLOz44cffqB9+/b069eP/v3789RTT9GzZ09Gjx5doR1yuZwFCxYQGhpKXFwc48ePZ+rUqXz++eeWPEVFRXzwwQd89dVXeHh44O3tzcSJEzl79iyrVq3C39+fdevW0adPH06dOkVERAQlJSW0bduWadOm4ezszMaNGxkxYgRhYWHcf//9Zezo2LEj8+fP56233rKE93N0dAS4aVsTJkxAr9eze/duHBwcOHv2LI6OjgQFBfHTTz8xePBgoqOjcXZ2RqvVlusHnU6Hvb291TGtVktiYiKXL18mJCSkyue2PF577TXmzp1L69atsbOz44svvqhSuR07duDn58eOHTuIjY3liSeeoFWrVjz33HNVKm82m8nPz7foCnq9niNHjjB9+nRLHrlcTo8ePYiKiqqwntzcXJydnVEqS2WTrVu3YjabSUpKonHjxuTn59OxY0fmzp1LUFAQAFFRUXTp0sVqg+XevXvzwQcfkJ2djZubGwDvvvsu3t7ePPvss+zZs6dK/boenU6HTCZDo9FYjtnZ2SGXy9m7d28Z/aMq5ObmWnxWWZ7GjRtbHSsoKCA4OBiz2UybNm2YNWsWTZs2BUpXM6amplrZ4+LiQvv27YmKimLo0KFERUXh6upKu3btLHl69OiBXC7n4MGDDBo0CIDt27ezdu1ajh8/zs8//1ytvv3yyy9ERkYyYcIENmzYgJeXF08++STTpk1DoVCUyW8ymVi7di2FhYVERkZapf3www98//33+Pr6MmDAAN58803L96hhw4Z4eHiwdOlS/vvf/2IymVi6dCmNGze2+j5Vty9Lly5l6NChODg4VKvfNzJ8+HBat27NokWLUCgUHD9+HJWqVEO6ePEiffr04f333+frr7/m6tWrTJw4kYkTJ7Js2TLg5vPSwYMHefbZ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q6tl9/fc3FzRvn170bx5cxEbG2tVj9FotNQzcOBA0bRpU7Fv3z5x6tQp0b9/f9GkSROh1+uFEELk5OQIHx8fMWLECHH69GmxatUqYW9vL7744otK/XljnzMzM8WxY8fExo0bBSBWrVoljh07JlJSUix5vv76axEVFSViY2PFd999J9zd3cVLL71UYTvXk5iYKMLDw0X37t1FYmKiVX+vsX37dmFvby+mT59ulZ6ZmWnJ884774g//vhDXLx4URw5ckQMHTpU2NnZiTNnzljyzJkzR7i6uooNGzaIkydPioEDB4rQ0FCreaxPnz6idevW4uDBg2Lv3r0iIiJCDBs2rEL7K/qOVkRCQoJwcnISEydOFNHR0eK3334T3t7e4v3337fkee2118SuXbtEfHy8OHnypHjttdeETCYTW7ZsEUIIERsbK959913x119/ifj4eLFhwwZRv3590aVLF0sd586dExqNRowbN06cPXtWnD59Wjz11FPCxcVFJCcnV7svnTt3Fk888USV+wmI+Pj4ctOKiorEhAkTxI4dO8SlS5fE3r17RVhYmJg6daoQQogTJ04IrVYrJkyYII4dOyZiYmLE+vXrxYQJEyx13GxeioqKEnK5XHz00UciJiZG/O9//xOurq43PVeXL18Wx44dE++8845wdHQUx44dE8eOHbPMXTWl+23evFn8/vvvIi4uTmzZskW0bNlStG/f3vL9vRVq6nf5joqzQLmfZcuWWfIUFxeL8ePHCzc3N2Fvby8GDRpkNWEIIcSlS5dE3759hVarFZ6enuLll18WBoPBKs+OHTtEq1athFqtFvXr17dq42bcbeKsEELEZseKMX+MEUN+HSImbpsokvPLnwhu5NzenWL51BfEh5OniEfm/Sn6L9gj3vv1jMgrrniwGrKyRML4CSLuscEi8cUXhbGCH/+7iUp9rCsQYmkfIRZ3EemnF4iDhx4Rhw4/JgoL42rNPrPRJDJXnRepC46K7I21164QQpjNZnH+/HmxdOlSsXjxYrF06VJx7ty5SkX88rjex4W5OvHbZyfE6pmHxC8Ljou8zLvvhqMuUpduUu9V7oSPs/QGsTolU4w+FWcRaXsePi8GH70gPr+cJs7mF1X7+1iXkcax7ZF8XDtIfrY9dcnHkjhbllsRZ0tKSsQzzzwjXFxchKurqxg3bpx47bXXLOLsuXPn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iROFXq8X/v7+4plnnhEmk8kJV+R67rnnHhESEiI0Go0ICwsT99xzj8jOzrZur6mpEY8//rjw8fERBoNB3HbbbSI3N9fmGIxv63766ScBQGRlZdmUsw93zObNm5u8N0yfPl0IIYQsy+KFF14QQUFBQqvVijFjxjSKfVFRkbjvvvuEu7u78PT0FDNnzhQVFRU2dQ4dOiRGjhwptFqtCAsLE0uWLOmsS3S6lmKck5PT7P158+bNQggh0tLSRFJSkvDy8hI6nU7069dP/PWvf7VJLArBGDcX4+rqajFu3DgREBAg1Gq1iIqKEo8++mijX+yyH7eutfuFEEK8//77Qq/Xi9LS0kb7sy+3rLWxmhD2G0ts3rxZDBo0SGg0GhETE2NzDiIiIqLOJAkhhIMm5RIRERERERERERFRM7jmLBEREREREREREZETMDlLRERERERERERE5ARMzhIRERERERERERE5AZOzRERERERERERERE7A5CwRERERERERERGREzA5S0REREREREREROQETM4SEREREREREREROQGTs0REREREREREREROwOQsERFRJ5MkCatXr3Z2M4iIiIiIiMjJmJwlIqJuZcaMGZAkqdHXhAkTnN00IiIiIiIi6mZUzm4AERFRZ5swYQI+/vhjmzKtVuuk1hAREREREVF3xZmzRETU7Wi1WgQHB9t8+fj4AKhfcmD58uWYOHEi9Ho9YmJi8J///Mdm/8OHD2P06NHQ6/Xw8/PDrFmzUFlZaVPno48+woABA6DVahESEoK5c+fabL98+TJuu+02GAwG9O7dG999951jL5qIiIiIiIhcDpOzRERE13jhhRdwxx134NChQ0hJScG9996LzMxMAEBVVRXGjx8PHx8f7Nu3D6tWrcKGDRtskq/Lly/HnDlzMGvWLBw+fBjfffcdevXqZXOOl156CXfffTcyMjJwyy23ICUlBcXFxZ16nURERERERORckhBCOLsRREREnWXGjBlYuXIldDqdTfnzzz+P559/HpIkYfbs2Vi+fLl123XXXYfExES8++67+OCDD7BgwQKcP38ebm5uAIAff/wRU6ZMwaVLlxAUFISwsDDMnDkTr7zySpNtkCQJf/rTn/DnP/8ZQH3C193dHWvXruXat0RERERERN0I15wlIqJu5+abb7ZJvgKAr6+v9XVycrLNtuTkZKSnpwMAMjMzkZCQYE3MAsCIESMgyzKysrIgSRIuXbqEMWPGtNiG+Ph462s3Nzd4enqioKCgo5dEREREREREXRCTs0RE1O24ubk1WmbAXvR6fZvqqdVqm+8lSYIsy45oEhEREREREbkorjlLRER0jd27dzf6vl+/fgCAfv364dChQ6iqqrJu37lzJxQKBWJjY+Hh4YEePXpg48aNndpmIiIiIiIi6no4c5aIiLqduro65OXl2ZSpVCr4+/sDAFatWoWhQ4di5MiR+Oyzz7B37158+OGHAICUlBQsWrQI06dPx+LFi1FYWIh58+bhgQceQFBQEABg8eLFmD17NgIDAzFx4kRUVFRg586dmDdvXudeKBEREREREbk0JmeJiKjbWbduHUJCQmzKYmNjcfz4cQDASy+9hC+++AKPP/44QkJC8Pnnn6N///4AAIPBgJ9++glPPPEEhg0bBoPBgDvuuANvvPGG9VjTp09HbW0tli1bhvnz58Pf3x933nln510gERERERERdQmSEEI4uxFERESuQpIkfPPNN5g2bZqzm0JERERERES/cVxzloiIiIiIiIiIiMgJmJwlIiIiIiIiIiIicgKuOUtERHQVrvZDREREREREnYUzZ4mIiIiIiIiIiIicgMlZIiIiIiIiIiIiIidgcpaIiIiIiIiIiIjICZicJSIiIiIiIiIiInICJmeJiIiIiIiIiIiInIDJWSIiIiIiIiIiIiInYHKWiIiIiIiIiIiIyAmYnCUiIiIiIiIiIiJygv8PcfgnCJChNWYAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "fig, axes = plt.subplots(4, 1, figsize=(14, 18), sharex=True)\n", "\n", @@ -157,10 +453,13 @@ " if \"seed\" in run_df.columns and run_df[\"seed\"].notna().any():\n", " run_label = f\"{run_label} | seed {int(run_df['seed'].dropna().iloc[0])}\"\n", "\n", - " axes[0].plot(run_df[\"epoch\"], run_df[\"total_loss\"], label=f\"total {run_label}\", alpha=0.8)\n", + " total_loss_log = np.log1p(run_df[\"total_loss\"].clip(lower=0))\n", + " overlap_loss_log = np.log1p(run_df[\"overlap_loss\"].clip(lower=0))\n", + "\n", + " axes[0].plot(run_df[\"epoch\"], total_loss_log, label=f\"total {run_label}\", alpha=0.8)\n", " axes[0].plot(\n", " run_df[\"epoch\"],\n", - " run_df[\"overlap_loss\"],\n", + " overlap_loss_log,\n", " linestyle=\":\",\n", " label=f\"overlap {run_label}\",\n", " alpha=0.7,\n", @@ -187,8 +486,8 @@ " alpha=0.8,\n", " )\n", "\n", - "axes[0].set_ylabel(\"Loss\")\n", - "axes[0].set_title(\"Total And Overlap Loss By Run\")\n", + "axes[0].set_ylabel(\"log1p(Loss)\")\n", + "axes[0].set_title(\"Log Total And Overlap Loss By Run\")\n", "axes[0].legend(loc=\"center left\", bbox_to_anchor=(1.02, 0.5))\n", "axes[0].grid(True, alpha=0.3)\n", "\n", diff --git a/placement.py b/placement.py index 69ce876..1fffa89 100644 --- a/placement.py +++ b/placement.py @@ -445,7 +445,8 @@ def overlap_repulsion_loss(cell_features, pin_features, edge_list): pairwise_overlap_area = overlap_x * overlap_y mask = torch.triu(torch.ones_like(pairwise_overlap_area), diagonal=1) - loss = torch.sum(pairwise_overlap_area * mask) + num_pairs = N * (N - 1) / 2 + loss = torch.sum(pairwise_overlap_area * mask) / num_pairs return loss @@ -462,7 +463,7 @@ def train_placement( cell_features, pin_features, edge_list, - num_epochs=2000, + num_epochs=1000, lr=0.1, lambda_wirelength=3.0, lambda_overlap=1.0, diff --git a/test.py b/test.py index 143a61f..aa6b05b 100644 --- a/test.py +++ b/test.py @@ -48,7 +48,7 @@ (7, 5, 150, 1007), (8, 7, 150, 1008), (9, 8, 200, 1009), - (10, 10, 2000, 1010), + # (10, 10, 2000, 1010), # Realistic designs # (11, 10, 10000, 1011), # (12, 10, 100000, 1012), From 5ebc4cdac5fa7d8bef75b4516bd12e733f258ad7 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 20 Apr 2026 00:43:03 -0700 Subject: [PATCH 12/48] normalize by edge count --- placement.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/placement.py b/placement.py index 1fffa89..76e9e67 100644 --- a/placement.py +++ b/placement.py @@ -445,8 +445,10 @@ def overlap_repulsion_loss(cell_features, pin_features, edge_list): pairwise_overlap_area = overlap_x * overlap_y mask = torch.triu(torch.ones_like(pairwise_overlap_area), diagonal=1) - num_pairs = N * (N - 1) / 2 - loss = torch.sum(pairwise_overlap_area * mask) / num_pairs + # num_pairs = N * (N - 1) / 2 + + + loss = torch.sum(pairwise_overlap_area * mask) / edge_list.shape[0] return loss From 1a5fe2cea71d525e0c96563ad1f667c6e4bab50e Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 20 Apr 2026 00:44:25 -0700 Subject: [PATCH 13/48] try concurrent execution --- test.py | 76 ++++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 54 insertions(+), 22 deletions(-) diff --git a/test.py b/test.py index aa6b05b..dae227d 100644 --- a/test.py +++ b/test.py @@ -19,6 +19,7 @@ """ import time +from concurrent.futures import ProcessPoolExecutor, as_completed import torch @@ -131,6 +132,7 @@ def run_placement_test( "total_cells": metrics["total_cells"], "num_nets": metrics["num_nets"], "seed": seed, + "device": str(device), "elapsed_time": elapsed_time, "loss_history_path": loss_history_path, # Final metrics @@ -140,6 +142,18 @@ def run_placement_test( } +def run_placement_test_case(test_case, loss_tracking_db_path): + """Unpack a test-case tuple for multiprocessing execution.""" + test_id, num_macros, num_std_cells, seed = test_case + return run_placement_test( + test_id, + num_macros, + num_std_cells, + loss_tracking_db_path, + seed, + ) + + def run_all_tests(): """Run all test cases and compute aggregate metrics. @@ -155,11 +169,12 @@ def run_all_tests(): print("Using default hyperparameters from train_placement()") print() - all_results = [] loss_tracking_db_path = create_loss_tracking_db(OUTPUT_DIR) print(f"Writing loss history to: {loss_tracking_db_path}") print() + max_workers = 4 + for idx, (test_id, num_macros, num_std_cells, seed) in enumerate(TEST_CASES, 1): size_category = ( "Small" if num_std_cells <= 30 @@ -169,32 +184,49 @@ def run_all_tests(): print(f"Test {idx}/{len(TEST_CASES)}: {size_category} ({num_macros} macros, {num_std_cells} std cells)") print(f" Seed: {seed}") - print(f" Device: {get_best_device()}") - - # Run test - result = run_placement_test( - test_id, - num_macros, - num_std_cells, - loss_tracking_db_path, - seed, - ) - - all_results.append(result) + print(f"Running up to {max_workers} tests concurrently") + print() - # Print summary - status = "✓ PASS" if result["num_cells_with_overlaps"] == 0 else "✗ FAIL" - print(f" Overlap Ratio: {result['overlap_ratio']:.4f} ({result['num_cells_with_overlaps']}/{result['total_cells']} cells)") - print(f" Normalized WL: {result['normalized_wl']:.4f}") - print(f" Time: {result['elapsed_time']:.2f}s") - print(f" History: {result['loss_history_path']}") - print(f" Status: {status}") - print() + wall_start_time = time.time() + with ProcessPoolExecutor(max_workers=max_workers) as executor: + future_to_test_case = { + executor.submit( + run_placement_test_case, + test_case, + loss_tracking_db_path, + ): test_case + for test_case in TEST_CASES + } + + completed_results = {} + for future in as_completed(future_to_test_case): + result = future.result() + completed_results[result["test_id"]] = result + + status = "✓ PASS" if result["num_cells_with_overlaps"] == 0 else "✗ FAIL" + print(f"Completed test {result['test_id']}:") + print( + f" Device: {result['device']}" + ) + print( + f" Overlap Ratio: {result['overlap_ratio']:.4f} " + f"({result['num_cells_with_overlaps']}/{result['total_cells']} cells)" + ) + print(f" Normalized WL: {result['normalized_wl']:.4f}") + print(f" Time: {result['elapsed_time']:.2f}s") + print(f" History: {result['loss_history_path']}") + print(f" Status: {status}") + print() + + all_results = [ + completed_results[test_id] + for test_id, _, _, _ in TEST_CASES + ] # Compute aggregate statistics avg_overlap_ratio = sum(r["overlap_ratio"] for r in all_results) / len(all_results) avg_normalized_wl = sum(r["normalized_wl"] for r in all_results) / len(all_results) - total_time = sum(r["elapsed_time"] for r in all_results) + total_time = time.time() - wall_start_time # Print aggregate results print("=" * 70) From 36e6d10f2d1261d99bd67c29ca85d2e15c6ecf3e Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 20 Apr 2026 00:46:49 -0700 Subject: [PATCH 14/48] normal by pair --- placement.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/placement.py b/placement.py index 76e9e67..405d427 100644 --- a/placement.py +++ b/placement.py @@ -445,10 +445,10 @@ def overlap_repulsion_loss(cell_features, pin_features, edge_list): pairwise_overlap_area = overlap_x * overlap_y mask = torch.triu(torch.ones_like(pairwise_overlap_area), diagonal=1) - # num_pairs = N * (N - 1) / 2 + num_pairs = N * (N - 1) / 2 - loss = torch.sum(pairwise_overlap_area * mask) / edge_list.shape[0] + loss = torch.sum(pairwise_overlap_area * mask) / num_pairs return loss From 61b06d88680b5f0981f4b88f863d544a59d9be81 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 20 Apr 2026 00:47:13 -0700 Subject: [PATCH 15/48] normal by num_cell --- placement.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/placement.py b/placement.py index 405d427..f96d510 100644 --- a/placement.py +++ b/placement.py @@ -448,7 +448,7 @@ def overlap_repulsion_loss(cell_features, pin_features, edge_list): num_pairs = N * (N - 1) / 2 - loss = torch.sum(pairwise_overlap_area * mask) / num_pairs + loss = torch.sum(pairwise_overlap_area * mask) / N return loss From 32f040737a3db62c54c31c684e78530f2adcbbf2 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 20 Apr 2026 00:55:55 -0700 Subject: [PATCH 16/48] normal by num_cell sqr root --- placement.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/placement.py b/placement.py index f96d510..7682c23 100644 --- a/placement.py +++ b/placement.py @@ -445,10 +445,8 @@ def overlap_repulsion_loss(cell_features, pin_features, edge_list): pairwise_overlap_area = overlap_x * overlap_y mask = torch.triu(torch.ones_like(pairwise_overlap_area), diagonal=1) - num_pairs = N * (N - 1) / 2 - - loss = torch.sum(pairwise_overlap_area * mask) / N + loss = torch.sum(pairwise_overlap_area * mask) / torch.sqrt(N) return loss From f35c88f36f4c0aa8d65025c967795c86a353a833 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 20 Apr 2026 00:59:07 -0700 Subject: [PATCH 17/48] normal by num_cell sqr root tensor --- placement.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/placement.py b/placement.py index 7682c23..1da3ab0 100644 --- a/placement.py +++ b/placement.py @@ -446,7 +446,10 @@ def overlap_repulsion_loss(cell_features, pin_features, edge_list): pairwise_overlap_area = overlap_x * overlap_y mask = torch.triu(torch.ones_like(pairwise_overlap_area), diagonal=1) - loss = torch.sum(pairwise_overlap_area * mask) / torch.sqrt(N) + normalization = torch.sqrt( + torch.tensor(N, device=pairwise_overlap_area.device, dtype=pairwise_overlap_area.dtype) + ) + loss = torch.sum(pairwise_overlap_area * mask) / normalization return loss From 098c483101078512cdb032364e09475c1d72ae46 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 20 Apr 2026 01:45:35 -0700 Subject: [PATCH 18/48] use a loss schedular --- lab/loss_tracking.ipynb | 145 +++++++++++++++++----------------------- placement.py | 3 +- 2 files changed, 65 insertions(+), 83 deletions(-) diff --git a/lab/loss_tracking.ipynb b/lab/loss_tracking.ipynb index 7618c37..1513c41 100644 --- a/lab/loss_tracking.ipynb +++ b/lab/loss_tracking.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 52, + "execution_count": 1, "id": "imports-cell", "metadata": {}, "outputs": [], @@ -18,7 +18,7 @@ }, { "cell_type": "code", - "execution_count": 53, + "execution_count": 2, "id": "load-loss-history-db", "metadata": {}, "outputs": [ @@ -26,8 +26,8 @@ "name": "stdout", "output_type": "stream", "text": [ - "Loading latest database: ../loss_tracking/loss_tracking_20260419_224756_179141.sqlite3\n", - "Loaded 10 runs from /Users/vrajpandya/repo/intern_challenge/loss_tracking/loss_tracking_20260419_224756_179141.sqlite3\n" + "Loading latest database: ../loss_tracking/loss_tracking_20260420_012613_033605.sqlite3\n", + "Loaded 9 runs from /Users/vrajpandya/repo/intern_challenge/loss_tracking/loss_tracking_20260420_012613_033605.sqlite3\n" ] }, { @@ -63,70 +63,63 @@ " 1\n", " 1\n", " [1001]\n", - " 20260419_224802_891940\n", + " 20260420_012620_124613\n", " \n", " \n", " 1\n", " 2\n", " 1\n", " [1002]\n", - " 20260419_224809_330698\n", + " 20260420_012620_186187\n", " \n", " \n", " 2\n", " 3\n", " 1\n", " [1003]\n", - " 20260419_224815_787143\n", + " 20260420_012620_133819\n", " \n", " \n", " 3\n", " 4\n", " 1\n", " [1004]\n", - " 20260419_224823_465282\n", + " 20260420_012620_862646\n", " \n", " \n", " 4\n", " 5\n", " 1\n", " [1005]\n", - " 20260419_224834_234140\n", + " 20260420_012626_972623\n", " \n", " \n", " 5\n", " 6\n", " 1\n", " [1006]\n", - " 20260419_224847_672460\n", + " 20260420_012628_796746\n", " \n", " \n", " 6\n", " 7\n", " 1\n", " [1007]\n", - " 20260419_224909_273646\n", + " 20260420_012633_126300\n", " \n", " \n", " 7\n", " 8\n", " 1\n", " [1008]\n", - " 20260419_224931_591843\n", + " 20260420_012634_066538\n", " \n", " \n", " 8\n", " 9\n", " 1\n", " [1009]\n", - " 20260419_225004_635847\n", - " \n", - " \n", - " 9\n", - " 10\n", - " 1\n", - " [1010]\n", - " 20260419_233016_848412\n", + " 20260420_012645_340855\n", " \n", " \n", "\n", @@ -134,19 +127,18 @@ ], "text/plain": [ " test_id run_count seeds latest_run_id\n", - "0 1 1 [1001] 20260419_224802_891940\n", - "1 2 1 [1002] 20260419_224809_330698\n", - "2 3 1 [1003] 20260419_224815_787143\n", - "3 4 1 [1004] 20260419_224823_465282\n", - "4 5 1 [1005] 20260419_224834_234140\n", - "5 6 1 [1006] 20260419_224847_672460\n", - "6 7 1 [1007] 20260419_224909_273646\n", - "7 8 1 [1008] 20260419_224931_591843\n", - "8 9 1 [1009] 20260419_225004_635847\n", - "9 10 1 [1010] 20260419_233016_848412" + "0 1 1 [1001] 20260420_012620_124613\n", + "1 2 1 [1002] 20260420_012620_186187\n", + "2 3 1 [1003] 20260420_012620_133819\n", + "3 4 1 [1004] 20260420_012620_862646\n", + "4 5 1 [1005] 20260420_012626_972623\n", + "5 6 1 [1006] 20260420_012628_796746\n", + "6 7 1 [1007] 20260420_012633_126300\n", + "7 8 1 [1008] 20260420_012634_066538\n", + "8 9 1 [1009] 20260420_012645_340855" ] }, - "execution_count": 53, + "execution_count": 2, "metadata": {}, "output_type": "execute_result" } @@ -263,7 +255,7 @@ }, { "cell_type": "code", - "execution_count": 54, + "execution_count": 3, "id": "list-individual-runs", "metadata": {}, "outputs": [ @@ -301,91 +293,82 @@ " 0\n", " 1\n", " 1001\n", - " 20260419_224802_891940\n", + " 20260420_012620_124613\n", " test.py\n", " train_placement\n", - " 2026-04-19T22:48:02\n", + " 2026-04-20T01:26:20\n", " \n", " \n", " 1\n", " 2\n", " 1002\n", - " 20260419_224809_330698\n", + " 20260420_012620_186187\n", " test.py\n", " train_placement\n", - " 2026-04-19T22:48:09\n", + " 2026-04-20T01:26:20\n", " \n", " \n", " 2\n", " 3\n", " 1003\n", - " 20260419_224815_787143\n", + " 20260420_012620_133819\n", " test.py\n", " train_placement\n", - " 2026-04-19T22:48:15\n", + " 2026-04-20T01:26:20\n", " \n", " \n", " 3\n", " 4\n", " 1004\n", - " 20260419_224823_465282\n", + " 20260420_012620_862646\n", " test.py\n", " train_placement\n", - " 2026-04-19T22:48:23\n", + " 2026-04-20T01:26:20\n", " \n", " \n", " 4\n", " 5\n", " 1005\n", - " 20260419_224834_234140\n", + " 20260420_012626_972623\n", " test.py\n", " train_placement\n", - " 2026-04-19T22:48:34\n", + " 2026-04-20T01:26:26\n", " \n", " \n", " 5\n", " 6\n", " 1006\n", - " 20260419_224847_672460\n", + " 20260420_012628_796746\n", " test.py\n", " train_placement\n", - " 2026-04-19T22:48:47\n", + " 2026-04-20T01:26:28\n", " \n", " \n", " 6\n", " 7\n", " 1007\n", - " 20260419_224909_273646\n", + " 20260420_012633_126300\n", " test.py\n", " train_placement\n", - " 2026-04-19T22:49:09\n", + " 2026-04-20T01:26:33\n", " \n", " \n", " 7\n", " 8\n", " 1008\n", - " 20260419_224931_591843\n", + " 20260420_012634_066538\n", " test.py\n", " train_placement\n", - " 2026-04-19T22:49:31\n", + " 2026-04-20T01:26:34\n", " \n", " \n", " 8\n", " 9\n", " 1009\n", - " 20260419_225004_635847\n", - " test.py\n", - " train_placement\n", - " 2026-04-19T22:50:04\n", - " \n", - " \n", - " 9\n", - " 10\n", - " 1010\n", - " 20260419_233016_848412\n", + " 20260420_012645_340855\n", " test.py\n", " train_placement\n", - " 2026-04-19T23:30:16\n", + " 2026-04-20T01:26:45\n", " \n", " \n", "\n", @@ -393,31 +376,29 @@ ], "text/plain": [ " test_id seed run_id runner run_label \\\n", - "0 1 1001 20260419_224802_891940 test.py train_placement \n", - "1 2 1002 20260419_224809_330698 test.py train_placement \n", - "2 3 1003 20260419_224815_787143 test.py train_placement \n", - "3 4 1004 20260419_224823_465282 test.py train_placement \n", - "4 5 1005 20260419_224834_234140 test.py train_placement \n", - "5 6 1006 20260419_224847_672460 test.py train_placement \n", - "6 7 1007 20260419_224909_273646 test.py train_placement \n", - "7 8 1008 20260419_224931_591843 test.py train_placement \n", - "8 9 1009 20260419_225004_635847 test.py train_placement \n", - "9 10 1010 20260419_233016_848412 test.py train_placement \n", + "0 1 1001 20260420_012620_124613 test.py train_placement \n", + "1 2 1002 20260420_012620_186187 test.py train_placement \n", + "2 3 1003 20260420_012620_133819 test.py train_placement \n", + "3 4 1004 20260420_012620_862646 test.py train_placement \n", + "4 5 1005 20260420_012626_972623 test.py train_placement \n", + "5 6 1006 20260420_012628_796746 test.py train_placement \n", + "6 7 1007 20260420_012633_126300 test.py train_placement \n", + "7 8 1008 20260420_012634_066538 test.py train_placement \n", + "8 9 1009 20260420_012645_340855 test.py train_placement \n", "\n", " saved_at \n", - "0 2026-04-19T22:48:02 \n", - "1 2026-04-19T22:48:09 \n", - "2 2026-04-19T22:48:15 \n", - "3 2026-04-19T22:48:23 \n", - "4 2026-04-19T22:48:34 \n", - "5 2026-04-19T22:48:47 \n", - "6 2026-04-19T22:49:09 \n", - "7 2026-04-19T22:49:31 \n", - "8 2026-04-19T22:50:04 \n", - "9 2026-04-19T23:30:16 " + "0 2026-04-20T01:26:20 \n", + "1 2026-04-20T01:26:20 \n", + "2 2026-04-20T01:26:20 \n", + "3 2026-04-20T01:26:20 \n", + "4 2026-04-20T01:26:26 \n", + "5 2026-04-20T01:26:28 \n", + "6 2026-04-20T01:26:33 \n", + "7 2026-04-20T01:26:34 \n", + "8 2026-04-20T01:26:45 " ] }, - "execution_count": 54, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" } @@ -428,13 +409,13 @@ }, { "cell_type": "code", - "execution_count": 55, + "execution_count": 4, "id": "plot-loss-history", "metadata": {}, "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABWcAAAbrCAYAAABmtBEiAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/H5lhTAAAACXBIWXMAAA9hAAAPYQGoP6dpAAEAAElEQVR4nOzdeVxN+f8H8Ndtubfbvm+0kSVrlpGENKKIsQ3GGCoNY8SEsY4ljMFYxm4sY8LIlm2MJUJZE1K2yJaJVpSS9u7790e/zrer0g0J834+HvfBPedzPuf9ed9zz7197ud8joiICIwxxhhjjDHGGGOMMcbeK6WaDoAxxhhjjDHGGGOMMcb+i7hzljHGGGOMMcYYY4wxxmoAd84yxhhjjDHGGGOMMcZYDeDOWcYYY4wxxhhjjDHGGKsB3DnLGGOMMcYYY4wxxhhjNYA7ZxljjDHGGGOMMcYYY6wGcOcsY4wxxhhjjDHGGGOM1QCVmg6AMcYYY4wxxljVFBUVoaCgoKbDYIwxxj56qqqqUFZWrrH9c+csY4wxxhhjjH0kiAjJycl4/vx5TYfCGGOMfTJ0dXVhamoKkUj03vfNnbOMMcYYY4wx9pEo6Zg1NjaGurp6jfwRyRhjjH0qiAjZ2dlITU0FAJiZmb33GLhzljHGGGOMMcY+AkVFRULHrIGBQU2HwxhjjH0SpFIpACA1NRXGxsbvfYoDviEYY4wxxhhjjH0ESuaYVVdXr+FIGGOMsU9LyWdrTcznzp2zjDHGGGOMMfYR4akMGGOMsXerJj9buXOWMcYYY4wxxhhjjDHGagB3zjLGGGOMMcYYY4wxxlgN4M5ZxhhjjDHGGGOfFC8vL/Tu3bumw3invLy8MGvWrJoOgzH2ig/1vSkSibB///6aDoMpgDtnGWOMMcYYY4xVq06dOmHs2LHvbbvKbNq0Cbq6uu+0zrCwMIhEIjx//vy15XJzc+Hl5YWmTZtCRUXlo+1E3rt3L7p06QIjIyNoa2vD0dERR48eLVNu9erVsLa2hpqaGhwcHHDx4kVhXVpaGsaMGYMGDRpAKpXC0tISP/zwAzIyMsrUs2nTJjRr1gxqamowNjaGr6+v3Ppr166hQ4cOUFNTg4WFBRYuXFhh7Dt27IBIJCqT+71796Jr164wMDCASCRCdHR0mW3v37+PPn36CO0eMGAAUlJSKslWsYcPH8LHxwc2NjaQSqWoW7cu/P39kZ+fL5QJCwtDr169YGZmBg0NDdjb2yMwMLDKbcnKysLo0aNRu3ZtSKVSNGrUCGvXrpUrk5ubC19fXxgYGEBTUxP9+vWTa8vVq1cxaNAgWFhYQCqVws7ODsuXL1eorSUCAwPRvHlzqKurw8zMDMOGDcOzZ8+E9QUFBZgzZw7q1q0LNTU1NG/eHMHBwXJ1nD59Gj179oS5uXmFHY4pKSnw8vKCubk51NXV4e7ujrt375YbExGhW7du5dYVHx8PDw8PqKurw9jYGBMnTkRhYWGV2vyxUCSvRISZM2fCzMwMUqkUrq6uZfKalpaGwYMHQ1tbG7q6uvDx8UFWVpaw/lM551Un7pxljDHGGGOMMcbek6KiIkilUvzwww9wdXWt1n1V513HT58+jS5duuDw4cOIjIyEi4sLevbsiaioKKHMzp07MX78ePj7++PKlSto3rw53NzckJqaCgBITExEYmIiFi9ejBs3bmDTpk0IDg6Gj4+P3L5+++03TJs2DVOmTMHNmzdx/PhxuLm5CeszMzPRtWtXWFlZITIyEosWLcKsWbOwfv36MnE/fPgQEyZMQIcOHcqse/nyJdq3b49ff/213Da/fPkSXbt2hUgkwsmTJ3Hu3Dnk5+ejZ8+ekMlklebs9u3bkMlkWLduHW7evImlS5di7dq1+Omnn4Qy58+fR7NmzbBnzx5cu3YN3t7eGDp0KA4ePFiltowfPx7BwcHYunUrbt26hbFjx2L06NE4cOCAUGbcuHH4559/EBQUhFOnTiExMRF9+/YV1kdGRsLY2Bhbt27FzZs3MW3aNEydOhWrVq2qtK0AcO7cOQwdOhQ+Pj64efMmgoKCcPHiRQwfPlwoM336dKxbtw4rV65ETEwMRo4ciT59+sgdRy9fvkTz5s2xevXqcvdDROjduzcePHiAv//+G1FRUbCysoKrqytevnxZpvyyZcvKvflTUVERPDw8kJ+fj/Pnz2Pz5s3YtGkTZs6cqVB7PzaV5RUAFi5ciBUrVmDt2rWIiIiAhoYG3NzckJubK5QZPHgwbt68iZCQEBw8eBCnT5/GiBEjhPXv85z30SLGGGOMMcYYYx+8nJwciomJoZycHGGZTCajnPzCGnnIZDKF4vb09CQAco+4uDgiIgoLC6PPPvuMxGIxmZqa0uTJk6mgoOC12xUWFtKwYcPI2tqa1NTUqH79+rRs2bIy++zVq1e58YSGhpap19/fn4iIcnNz6ccffyRzc3NSV1enNm3aUGhoqLDtw4cPqUePHqSrq0vq6urUqFEjOnToEMXFxZWp09PTU6HcVBRneWVL4ixPSQw7duygjh07kkQioYCAAPL396fmzZvLlV26dClZWVmViWPRokVkampK+vr6NGrUKMrPz1cothKNGjWi2bNnC8/btGlDvr6+wvOioiIyNzen+fPnV1jHrl27SCwWC8dBWloaSaVSOn78eIXbrFmzhvT09CgvL09YNnnyZGrQoIFcucLCQmrXrh398ccfr819SS6joqLklh89epSUlJQoIyNDWPb8+XMSiUQUEhJSYXyvs3DhQrKxsXltme7du5O3t3eV2tK4cWOaM2eO3LKWLVvStGnThLhVVVUpKChIWH/r1i0CQOHh4RXGMmrUKHJxcVGkabRo0SKqU6eO3LIVK1ZQrVq1hOdmZma0atUquTJ9+/alwYMHl1snANq3b5/cstjYWAJAN27cEJYVFRWRkZERbdiwQa5sVFQU1apVi5KSksrUdfjwYVJSUqLk5GRh2e+//07a2tpyx9arKntv5uXlka+vL5mampJEIiFLS0uaN2+esD49PZ18fHzI0NCQtLS0yMXFhaKjo+Xq2L9/P7Vo0YIkEgnZ2NjQrFmzhPcIEdGdO3eoQ4cOJJFIyM7Ojo4dO1ZuripSXlmZTEampqa0aNEiYdnz589JIpHQ9u3biYgoJiaGANClS5eEMkeOHCGRSEQJCQll9lOVc977Vt5n7Pui8t56gRljjDHGGGOMvVN5hTL0XxteI/sOGukINVXlSsstX74cd+7cQZMmTTBnzhwAgJGRERISEtC9e3d4eXlhy5YtuH37NoYPHw41NTXMmjWrwu1kMhlq166NoKAgGBgY4Pz58xgxYgTMzMwwYMCASuNp164dli1bhpkzZyI2NhYAoKmpCQAYPXo0YmJisGPHDpibm2Pfvn1wd3fH9evXUa9ePfj6+iI/Px+nT5+GhoYGYmJioKmpCQsLC+zZswf9+vVDbGwstLW1IZVK3zS1b2XKlClYsmQJWrRoATU1Naxbt06h7UJDQ2FmZobQ0FDcu3cPAwcOhL29vdwox9eRyWR48eIF9PX1AQD5+fmIjIzE1KlThTJKSkpwdXVFeHjFx2xGRga0tbWholLcXRESEgKZTIaEhATY2dnhxYsXaNeuHZYsWQILCwsAQHh4ODp27AixWCzU4+bmhl9//RXp6enQ09MDAMyZMwfGxsbw8fHBmTNnFGpXaXl5eRCJRJBIJMIyNTU1KCkp4ezZs280KjAjI0PI2evK2NnZyS2rrC3t2rXDgQMHMGzYMJibmyMsLAx37tzB0qVLARSPii0oKJCLuWHDhrC0tER4eDjatm37xvGWcHR0xE8//YTDhw+jW7duSE1Nxe7du9G9e3ehTF5eHtTU1OS2k0qlOHv2rEL7KKkDgFw9SkpKkEgkOHv2LL799lsAQHZ2Nr7++musXr0apqamZeoJDw9H06ZNYWJiIixzc3PD999/j5s3b6JFixYKx1TaihUrcODAAezatQuWlpZ49OgRHj16JKzv378/pFIpjhw5Ah0dHaxbtw6dO3fGnTt3oK+vjzNnzmDo0KFYsWIFOnTogPv37wsjU/39/SGTydC3b1+YmJggIiICGRkZ72Q6mLi4OCQnJ8sdIzo6OnBwcEB4eDi++uorhIeHQ1dXF61btxbKuLq6QklJCREREejTp89bx/FfwJ2zjDHGGGOMMcaqjY6ODsRiMdTV1eU6RNasWQMLCwusWrUKIpEIDRs2RGJiIiZPnoyZM2dWuJ2ysjJmz54tPLexsUF4eDh27dqlUOesWCyGjo4ORCKRXL3x8fEICAhAfHw8zM3NAQATJkxAcHAwAgICMG/ePMTHx6Nfv35o2rQpAKBOnTrC9iUdVsbGxu98PtuqGDt2rNyl6YrS09PDqlWroKysjIYNG8LDwwMnTpxQuHN28eLFyMrKEl6Dp0+foqioSK6jCwBMTExw+/btcut4+vQpfv75Z7lLoh88eACZTIZ58+Zh+fLl0NHRwfTp09GlSxdcu3YNYrEYycnJsLGxKbMfAEhOToaenh7Onj2LjRs3ljuPrKLatm0LDQ0NTJ48GfPmzQMRYcqUKSgqKkJSUlKV67t37x5WrlyJxYsXV1hm165duHTpklwnuyJtWblyJUaMGIHatWtDRUUFSkpK2LBhAzp27AigOC9isbjMsWpiYoLk5ORy6zx//jx27tyJQ4cOKdQ+JycnBAYGYuDAgcjNzUVhYSF69uwpdxm9m5sbfvvtN3Ts2BF169bFiRMnsHfvXhQVFSm0D+B/ncpTp07FunXroKGhgaVLl+Lx48dyr8u4cePQrl079OrVq9x6kpOTyz1eS9a9qfj4eNSrVw/t27eHSCSClZWVsO7s2bO4ePEiUlNThU7/xYsXY//+/di9ezdGjBiB2bNnY8qUKfD09ARQfN75+eefMWnSJPj7++P48eO4ffs2jh49Kpy75s2bh27dur1xzMD/2lxeTkrWJScnw9jYWG69iooK9PX13ypn/zXcOcsYY4wxxhhjHymJihKCRjrW2L7fxq1bt+Do6Cg396OTkxOysrLw+PFjWFpaVrjt6tWr8eeffyI+Ph45OTnIz8+Hvb39W8Vz/fp1FBUVoX79+nLL8/LyYGBgAAD44Ycf8P333+PYsWNwdXVFv3790KxZs7fa77tWegRbVTRu3BjKyv8bCW1mZobr168rtO22bdswe/Zs/P3332U6ahSVmZkJDw8PNGrUCLNmzRKWy2QyFBQUYMWKFejatSsAYPv27TA1NUVoaKjc3LMVefHiBYYMGYINGzbA0NDwjeIDikduBwUF4fvvv8eKFSugpKSEQYMGoWXLllBSqtr7ISEhAe7u7ujfv3+FHeChoaHw9vbGhg0b0Lhx4yq1ZeXKlbhw4QIOHDgAKysrnD59Gr6+vjA3N3+jEb43btxAr1694O/vL7wOlYmJiYGfnx9mzpwJNzc3JCUlYeLEiRg5ciQ2btwIoHhk/fDhw9GwYUOIRCLUrVsX3t7e+PPPPxWOTVVVFXv37oWPjw/09fWhrKwMV1dXdOvWDUQEADhw4ABOnjwpN5ft++Ll5YUuXbqgQYMGcHd3R48ePYQcXr16FVlZWcI5pkROTg7u378vlDl37hx++eUXYX1RURFyc3ORnZ2NW7duwcLCQuiYBYpHLbOPB3fOMsYYY4wxxthHSiQSKTS1wKdkx44dmDBhApYsWQJHR0doaWlh0aJFiIiIeKt6s7KyoKysjMjISLlOSuB/0x58++23cHNzw6FDh3Ds2DHMnz8fS5YswZgxY95q3++ShoaG3HMlJSWhg6pEeTcKU1VVlXsuEokUusnVjh078O233yIoKEiu08/Q0BDKyspISUmRK5+SklLmkvIXL17A3d0dWlpa2Ldvn1wsZmZmAIBGjRoJy4yMjGBoaIj4+HgAgKmpabn7KVl3//59PHz4ED179hTWl7RNRUUFsbGxqFu3bqVtBYCuXbvi/v37ePr0KVRUVKCrqwtTU1O5UdSVSUxMhIuLC9q1a1fuTcsA4NSpU+jZsyeWLl2KoUOHCssVaYu5uTl++ukn7Nu3Dx4eHgCAZs2aITo6GosXL4arqytMTU2Rn5+P58+fy42eLe/1iYmJQefOnTFixAhMnz5d4XbOnz8fTk5OmDhxohCDhoYGOnTogLlz58LMzAxGRkbYv38/cnNz8ezZM5ibm2PKlClVyicAtGrVCtHR0cjIyEB+fj6MjIzg4OAg/Fhx8uRJ3L9/v8xI4X79+qFDhw4ICwuDqakpLl68KLe+9HH0plq2bIm4uDgcOXIEx48fx4ABA+Dq6ordu3cjKysLZmZmCAsLK7NdSaxZWVmYPXt2uSPiX50S4l0qaXNKSorwPix5XvJjmKmpqXCDvxKFhYVIS0t7q5z917zdT52MMcYYY4wxxlglxGJxmcuU7ezsEB4eLtdxeO7cOWhpaaF27doVbnfu3Dm0a9cOo0aNQosWLWBrayuMMHubeFq0aIGioiKkpqbC1tZW7lG6k8HCwgIjR47E3r178eOPP2LDhg1CnQCqdDn2+2BkZITk5GS5PL/Npf2lbd++Hd7e3ti+fbvQCVhCLBajVatWOHHihLBMJpPhxIkTcqP6MjMz0bVrV4jFYhw4cKBMZ5OTkxMACPMDA0BaWhqePn0qXB7u6OiI06dPy3U6h4SEoEGDBtDT00PDhg1x/fp1REdHC48vvvgCLi4uiI6OFuaurQpDQ0Po6uri5MmTSE1NxRdffKHQdgkJCejUqRNatWqFgICAckfchoWFwcPDA7/++qvcFA8AFGpLQUEBCgoKytStrKwsdOS2atUKqqqqcq9PbGws4uPj5V6fmzdvwsXFBZ6ennIjNxWRnZ1dbgwAyvxgoKamhlq1aqGwsBB79uypcOqByujo6MDIyAh3797F5cuXhXqmTJmCa9euyeUNAJYuXYqAgAAAxcfR9evX5TobQ0JCoK2tLffjwJvQ1tbGwIEDsWHDBuzcuRN79uxBWloaWrZsieTkZKioqJQ575SMjG7ZsiViY2PLrLe1tYWSkhLs7Ozw6NEjuSkcLly48FbxAsVTxpiamsodI5mZmYiIiBCOEUdHRzx//hyRkZFCmZMnT0Imk8HBweGtY/iv4JGzjDHGGGOMMcaqlbW1NSIiIvDw4UNoampCX18fo0aNwrJlyzBmzBiMHj0asbGx8Pf3x/jx44UOnfK2q1evHrZs2YKjR4/CxsYGf/31Fy5dulRmztHK4snKysKJEyfQvHlzqKuro379+hg8eDCGDh0q3FDryZMnOHHiBJo1awYPDw+MHTsW3bp1Q/369ZGeno7Q0FDhRk1WVlYQiUQ4ePAgunfvDqlUKoy4fVVMTAzy8/ORlpaGFy9eCB1Fbzs1Q3k6deqEJ0+eYOHChfjyyy8RHByMI0eOQFtb+63q3bZtGzw9PbF8+XI4ODgI80tKpVLo6OgAAMaPHw9PT0+0bt0abdq0wbJly/Dy5Ut4e3sD+F/HbHZ2NrZu3YrMzExkZmYCKO5UVlZWRv369dGrVy/4+flh/fr10NbWxtSpU9GwYUO4uLgAAL7++mvMnj0bPj4+mDx5Mm7cuIHly5cLN79SU1NDkyZN5OIvGZVYenlaWhri4+ORmJgI4H8dwqampkIHfUBAAOzs7GBkZITw8HD4+flh3LhxaNCgQaU5K+mYtbKywuLFi/HkyRNhXUn9oaGh6NGjB/z8/NCvXz8hr2KxGPr6+gq1RSwWw9nZGRMnToRUKoWVlRVOnTqFLVu24LfffgNQ3Inp4+OD8ePHQ19fH9ra2hgzZgwcHR2Fm4HduHEDn3/+Odzc3DB+/HghFmVlZRgZGVXa3p49e2L48OH4/fffhWkNxo4dizZt2giX4EdERCAhIQH29vZISEjArFmzIJPJMGnSJKGerKws3Lt3T3geFxeH6Oho6OvrC9OfBAUFwcjICJaWlrh+/Tr8/PzQu3dvYfqA0q9haZaWlsK5o2vXrmjUqBGGDBmChQsXIjk5GdOnT4evr6/cTeCq6rfffoOZmRlatGgBJSUlBAUFwdTUFLq6unB1dYWjoyN69+6NhQsXon79+khMTMShQ4fQp08ftG7dGjNnzkSPHj1gaWmJL7/8EkpKSrh69Spu3LiBuXPnwtXVFfXr14enpycWLVqEzMxMTJs2rdK4KsurSCTC2LFjMXfuXNSrVw82NjaYMWMGzM3N0bt3bwDFP7K5u7tj+PDhWLt2LQoKCjB69Gh89dVXctMsvM9z3keJGGOMMcYYY4x98HJycigmJoZycnJqOpQqi42NpbZt25JUKiUAFBcXR0REYWFh9Nlnn5FYLCZTU1OaPHkyFRQUvHa73Nxc8vLyIh0dHdLV1aXvv/+epkyZQs2bNxe28/T0pF69er02ppEjR5KBgQEBIH9/fyIiys/Pp5kzZ5K1tTWpqqqSmZkZ9enTh65du0ZERKNHj6a6deuSRCIhIyMjGjJkCD19+lSoc86cOWRqakoikYg8PT0r3LeVlRUBKPN4HU9PTyHO8sTFxREAioqKKrPu999/JwsLC9LQ0KChQ4fSL7/8QlZWVnJ1v5ovPz8/cnZ2rnB/zs7O5bbh1XavXLmSLC0tSSwWU5s2bejChQvCutDQ0HLrKH2MEBFlZGTQsGHDSFdXl/T19alPnz4UHx8vt5+rV69S+/btSSKRUK1atWjBggUVxl5RmwMCAsqNpXTeJ0+eTCYmJqSqqkr16tWjJUuWkEwme+2+Kqu/9Gvv6elZ7vrXvRbltSUpKYm8vLzI3Nyc1NTUqEGDBmVizcnJoVGjRpGenh6pq6tTnz59KCkpSVjv7+9fbiylj53KrFixgho1akRSqZTMzMxo8ODB9PjxY2F9WFgY2dnZkUQiIQMDAxoyZAglJCTI1VHRcVL6WFu+fDnVrl2bVFVVydLSkqZPn055eXmvjQ0A7du3T27Zw4cPqVu3biSVSsnQ0JB+/PFHuXNSeSp7b65fv57s7e1JQ0ODtLW1qXPnznTlyhVhfWZmJo0ZM4bMzc1JVVWVLCwsaPDgwXLHeHBwMLVr146kUilpa2tTmzZtaP369cL62NhYat++PYnFYqpfvz4FBweX277SFMmrTCajGTNmkImJCUkkEurcuTPFxsbK1fPs2TMaNGgQaWpqkra2Nnl7e9OLFy/kyrzJOe99q8nPWBHRK2PJGWOMMcYYY4x9cHJzcxEXFwcbG5tqnWeQfZi8vLxgbW0td7MsxljN4/fmp6EmP2N5zlnGGGOMMcYYY4wxxhirAdw5yxhjjDHGGGOMMfaW5s2bB01NzXIf3bp1q+nw3rnGjRtX2N7AwMCaDo+xjwbfEIwxxhhjjDHGGPvA9e7dW7jxE/swjRw5EgMGDCh3nVQqfc/RVL/Dhw+joKCg3HUmJibvOZqaw+9N9rZ4zlnGGGOMMcYY+wjwnLOMMcZY9eA5ZxljjDHGGGOMMcYYY+w/hjtnGWOMMcYYY4wxxhhjrAZw5yxjjDHGGGOMMcYYY4zVAO6cZYwxVqFNmzZBJBLh4cOHNR2KnE6dOqFTp041HcZbs7a2hpeXV02HwRhjjDHGGGOshnDnLGOM/b+SjsjLly/XWAwPHz6ESCRS6FFZh2l2djZmzZqFsLCw9xJ7iUmTJkEkEmHgwIHvdb8VKSgowIoVK/DZZ59BS0sLmpqa+Oyzz7BixYoK7y77qfsQjnVFzJo1S+6YV1JSgpmZGXr06IELFy680329+v7S1taGs7MzDh069E73wxhjjDHGGGOlqdR0AIwxxv7HyMgIf/31l9yyJUuW4PHjx1i6dGmZsq+TnZ2N2bNnA8B7G2VKRNi+fTusra3xzz//4MWLF9DS0nov+y7Py5cv4eHhgVOnTqFHjx7w8vKCkpISgoOD4efnh7179+LQoUPQ0NCosRhZ5X7//XdoampCJpPh0aNH2LBhAzp27IiLFy/C3t7+ne2nS5cuGDp0KIgI//77L37//Xf07NkTR44cgZub2zvbD2OMMcYYY4yV4M5Zxhj7gGhoaOCbb76RW7Zjxw6kp6eXWf4hCgsLw+PHj3Hy5Em4ublh79698PT0rLF4xo8fj1OnTmHlypUYPXq0sPz777/H6tWrMXr0aEyYMAG///77e4uJiJCbmwupVPre9vmx+/LLL2FoaCg87927N5o0aYKgoKB32jlbv359ufdZv3790KhRIyxfvpw7Zxlj7CPWqVMn2NvbY9myZTUdygclLCwMXl5eH9z0VYz9132o700vLy88f/4c+/fvr+lQPjk8rQFjjFVRVFQUunXrBm1tbWhqaqJz587lXmJ97do1ODs7QyqVonbt2pg7dy4CAgLeyRyuqamp8PHxgYmJCdTU1NC8eXNs3rxZWP/w4UNhZO3s2bOFS7VnzZolxObl5YU6depATU0NpqamGDZsGJ49e/ZWcQUGBqJRo0ZwcXGBq6srAgMDy5QJCwuDSCTCrl278Msvv6B27dpQU1ND586dce/evTLl169fj7p160IqlaJNmzY4c+aMQrE8fvwYGzduxOeffy7XMVvC19cXLi4u+OOPP/D48WMAQJMmTeDi4lKmrEwmQ61atfDll1/KLVu2bBkaN24MNTU1mJiY4LvvvkN6errcttbW1ujRoweOHj2K1q1bQyqVYt26deXGnJaWhgkTJqBp06bQ1NSEtrY2unXrhqtXr8qVK8nhzp078dNPP8HU1BQaGhr44osv8OjRI4XyowhFjvWCggLMnj0b9erVg5qaGgwMDNC+fXuEhIQIZZKTk+Ht7Y3atWtDIpHAzMwMvXr1euP3gampKQBARaX4N+asrCxoaGjAz8+vTNnHjx9DWVkZ8+fPr/J+7OzsYGhoiPv37wvLKpqHueQ1KT2NSKdOndCkSRPExMTAxcUF6urqqFWrFhYuXFjlWBhjjH34RCLRO++0sLa2VqhTef369ejUqRO0tbUhEonw/PnzdxrH+/Dw4UP4+PjAxsYGUqkUdevWhb+/P/Lz8+XKXbt2DR06dICamhosLCzKfK5u2LABHTp0gJ6eHvT09ODq6oqLFy+W2d+tW7fwxRdfQEdHBxoaGvjss88QHx8vrM/NzYWvry8MDAygqamJfv36ISUlpdzYnz17htq1a5fJfVJSEr7++mvUr18fSkpKGDt2bJltCwoKMGfOHNStW1f4Xh8cHKxw3ubPny9M32VsbIzevXsjNjZWWJ+WloYxY8agQYMGkEqlsLS0xA8//ICMjIwqtQUo/q7fvHlzqKurw8zMrNy/H4KCgtCwYUOoqamhadOmOHz4sFxbJ0+ejKZNm0JDQwPm5uYYOnQoEhMTFW7vnTt30KtXLxgaGkJbWxvt27dHaGioXJkTJ06gXbt20NLSgqmpKSZPnozCwkJhfW5uLry8vNC0aVOoqKigd+/e5e5r9erVsLOzg1QqRYMGDbBly5YK49qxYwdEIlGZuogIM2fOhJmZGaRSKVxdXXH37l2F2/sxUTSvYWFhaNmyJSQSCWxtbbFp06YyZVavXg1ra2uoqanBwcGhzHv4Uzjnlcads4wxVgU3b95Ehw4dcPXqVUyaNAkzZsxAXFwcOnXqhIiICKFcQkICXFxccPPmTUydOhXjxo1DYGAgli9f/tYx5OTkoFOnTvjrr78wePBgLFq0CDo6OvDy8hLqNzIyEkaD9unTB3/99Rf++usv9O3bFwAQEhKCBw8ewNvbGytXrsRXX32FHTt2oHv37iCiN4orLy8Pe/bswaBBgwAAgwYNwsmTJ5GcnFxu+QULFmDfvn2YMGECpk6digsXLmDw4MFyZTZu3IjvvvsOpqamWLhwIZycnBTugDxy5AiKioowdOjQCssMHToUhYWFwhfggQMH4vTp02ViPnv2LBITE/HVV18Jy7777jtMnDgRTk5OWL58Oby9vREYGAg3N7cyc9nGxsZi0KBB6NKlC5YvX17haM8HDx5g//796NGjB3777TdMnDgR169fh7Ozc7lfWn/55RccOnQIkydPxg8//ICQkBC4uroiJyen0vxURtFjfdasWZg9ezZcXFywatUqTJs2DZaWlrhy5YpQpl+/fti3bx+8vb2xZs0a/PDDD3jx4oXcH0Cvk5aWhqdPnyI1NRVRUVEYPnw41NTUMGDAAACApqYm+vTpg507d6KoqEhu2+3bt4OIyhxbisjIyEB6ejr09PSqvG2J9PR0uLu7o3nz5liyZAkaNmyIyZMn48iRI29cJ2OMlasgt/hR+nO8qLB4WVGB4mUL8xUr+xF4tVPvU5adnQ13d3f89NNP1bqf6szp7du3IZPJsG7dOty8eRNLly7F2rVr5dqUmZmJrl27wsrKCpGRkVi0aBFmzZqF9evXC2XCwsIwaNAghIaGIjw8HBYWFujatSsSEhKEMvfv30f79u3RsGFDhIWF4dq1a5gxYwbU1NSEMuPGjcM///yDoKAgnDp1ComJicJ36Vf5+PigWbNmZZbn5eXByMgI06dPR/Pmzcvddvr06Vi3bh1WrlyJmJgYjBw5En369EFUVJRCeTt16hR8fX1x4cIFhISEoKCgAF27dsXLly8BAImJiUhMTMTixYtx48YNbNq0CcHBwfDx8alSW86dO4ehQ4fCx8cHN2/eRFBQEC5evIjhw4cLZc6fP49BgwbBx8cHUVFR6N27N3r37o0bN24AKD5Or1y5ghkzZuDKlSvYu3cvYmNj8cUXXyjUVgDo0aMHCgsLcfLkSURGRqJ58+bo0aOH8P396tWr6N69O9zd3REVFYWdO3fiwIEDmDJlilBHUVERpFIpfvjhB7i6upa7n99//x1Tp07FrFmzcPPmTcyePRu+vr74559/ypR9+PAhJkyYgA4dOpRZt3DhQqxYsQJr165FREQENDQ04ObmhtzcXIXb/LFQJK9xcXHw8PCAi4sLoqOjMXbsWHz77bc4evSoUGbnzp0YP348/P39ceXKFTRv3hxubm5ITU0Vyryvc957Q4wxxoiIKCAggADQpUuXKizTu3dvEovFdP/+fWFZYmIiaWlpUceOHYVlY8aMIZFIRFFRUcKyZ8+ekb6+PgGguLg4hePy8PAgKysr4fmyZcsIAG3dulVYlp+fT46OjqSpqUmZmZlERPTkyRMCQP7+/mXqzM7OLrNs+/btBIBOnz4tLCvJiSLx7t69mwDQ3bt3iYgoMzOT1NTUaOnSpXLlQkNDCQDZ2dlRXl6esHz58uUEgK5fvy60ydjYmOzt7eXKrV+/ngCQs7Pza+MZO3YsAZB7DV515coVAkDjx48nIqLY2FgCQCtXrpQrN2rUKNLU1BTydubMGQJAgYGBcuWCg4PLLLeysiIAFBwcXGb/VlZW5OnpKTzPzc2loqIiuTJxcXEkkUhozpw5wrKSHNaqVUt4vYmIdu3aRQBo+fLlFbaZ6N0e682bNycPD48K60lPTycAtGjRotfGVB5/f38CUOahq6tbJp9Hjx4lAHTkyBG55c2aNav0WCEiAkA+Pj705MkTSk1NpcuXL5O7u3uZ2Ct6T5S8JqGhocIyZ2dnAkBbtmwRluXl5ZGpqSn169dP8UQwxtj/y8nJoZiYGMrJySm7MnBA8SPn+f+WXd9TvOzCWvmyO74pXv4i9X/Lbh0sXnb2lc+Q3T7Fy9Pj/7fsbkiVY8/NzaUxY8aQkZERSSQScnJyoosXLxIRUVFREdWqVYvWrFkjt82VK1dIJBLRw4cPiaj4M8XHx4cMDQ1JS0uLXFxcKDo6Wijv7+9PzZs3pw0bNpC1tTWJRCIiKj4f+/n5CeW2bNlCrVq1Ik1NTTIxMaFBgwZRSkqKsL7knH7w4EFq2rQpSSQScnBwEL6jlKfk877kUfq72/79+6lFixYkkUjIxsaGZs2aRQUFBUREJJPJyN/fnywsLEgsFpOZmRmNGTNGiPvVz8DKlMSenp6uUNnScZbH2dmZfH19yc/PjwwMDKhTp04UFxdX5jtWyed9yedgSRzHjx+nVq1akVQqJUdHR7p9+3alcZW2cOFCsrGxEZ6vWbOG9PT05L4bTp48mRo0aFBhHYWFhaSlpUWbN28Wlg0cOJC++eabCrd5/vw5qaqqUlBQkLDs1q1bBIDCw8Plyq5Zs4acnZ3pxIkTr839q8dhCTMzM1q1apXcsr59+9LgwYMrjO91UlNTCQCdOnWqwjK7du0isVgsHIclXteWRYsWUZ06deTKr1ixgmrVqiU8HzBgQJnvhQ4ODvTdd99VGMvFixcJAP3777+Vtq3k75vSf69kZmYSAAoJKT4vTZ06lVq3bi233YEDB0hNTU3ue3MJT09P6tWrV5nljo6ONGHCBLll48ePJycnJ7llhYWF1K5dO/rjjz/K1CWTycjU1FTuu+Tz589JIpHQ9u3bK2ynIu/NoKAgatKkCampqZG+vj517tyZsrKyhPUbNmyghg0bkkQioQYNGtDq1avlto+Pj6f+/fuTjo4O6enp0RdffCH3/bawsJDGjRtHOjo6pK+vTxMnTqShQ4eWm6vyVJTXSZMmUePGjeWWDRw4kNzc3ITnbdq0IV9fX+F5UVERmZub0/z588vUV5VzXmVe+xlbzXjkLGOMKaioqAjHjh1D7969UadOHWG5mZkZvv76a5w9exaZmZkAgODgYDg6OsqNkNTX13+j0XuvOnz4MExNTYURqgCgqqqKH374AVlZWTh16lSldZSe7zQ3NxdPnz5F27ZtAUBuxGNVBAYGonXr1rC1tQUAaGlpwcPDo9ypDQDA29sbYrFYeF7yS/ODBw8AAJcvX0ZqaipGjhwpV87Lyws6OjqVxvPixQshjoqUrCt53erXrw97e3vs3LlTKFNUVITdu3ejZ8+eQt6CgoKgo6ODLl264OnTp8KjVatW0NTULHNplY2NjUJzlkokEigpKQn7ffbsGTQ1NdGgQYNyX5ehQ4fKte/LL7+EmZmZ3OVjb6Iqx7quri5u3rxZ4eVZUqkUYrEYYWFhZaZ8UNSePXsQEhKCY8eOISAgAPXr10e/fv1w/vx5oYyrqyvMzc3ljrcbN27g2rVrCs/XvHHjRhgZGcHY2BitW7fGiRMnMGnSJIwfP/6N4gaKR/WW3r9YLEabNm2E45wxxv4rJk2ahD179mDz5s24cuUKbG1t4ebmhrS0NCgpKWHQoEHYtm2b3DaBgYFwcnKClZUVAKB///5ITU3FkSNHEBkZiZYtW6Jz585IS0sTtrl37x727NmDvXv3Ijo6utxYCgoK8PPPP+Pq1avYv38/Hj58CC8vrzLlJk6ciCVLluDSpUswMjJCz549y1wdU+LSpUsAgICAACQlJQnPz5w5g6FDh8LPzw8xMTFYt24dNm3ahF9++QVA8Wfc0qVLsW7dOty9exf79+9H06ZNAQB79+5F7dq1MWfOHCQlJSEpKUnxhL9Dmzdvhlgsxrlz57B27doqbTtt2jQsWbIEly9fhoqKCoYNG1al7TMyMqCvry88Dw8PR8eOHeW+G7q5uSE2NrbC7xnZ2dkoKCgQ6pHJZDh06BDq168PNzc3GBsbw8HBQW5KisjISBQUFMiN/mvYsCEsLS0RHh4uLIuJicGcOXOwZcsW4TtcVeXl5cmN2AWKvz+dPXv2jeorma6gdN7KK6OtrS1MEQVU3hZHR0c8evQIhw8fBhEhJSUFu3fvRvfu3YUy4eHhZUZMurm5yeWsvFhEIhF0dXUrbZuBgYEwvcDLly9RWFiIdevWwdjYGK1atQJQcT5zc3MRGRlZ6T5KVFTPxYsX5c4Dc+bMgbGxcbkjkePi4pCcnCyXEx0dHTg4OLw2J5VJSkrCoEGDMGzYMNy6dQthYWHo27evcAVkYGAgZs6ciV9++QW3bt3CvHnzMGPGDGEavIKCAri5uUFLSwtnzpzBuXPnoKmpCXd3d2F0/JIlS7Bp0yb8+eefOHv2LNLS0rBv3743jrlEZcdIfn4+IiMj5cooKSnB1dX1rXL2oePOWcYYU9CTJ0+QnZ2NBg0alFlnZ2cn3EkeAP7991+hk7K08pZV1b///ot69eqV+dJkZ2cnrK9MWloa/Pz8YGJiAqlUCiMjI9jY2ABAhfNPvc7z589x+PBhODs74969e8LDyckJly9fxp07d8psY2lpKfe85NLxki/WJe2oV6+eXDlVVVW5DsOKlHRalnTSlqe8DtyBAwfi3LlzwqVvYWFhSE1NxcCBA4Uyd+/eRUZGBoyNjWFkZCT3yMrKkrvkBoCQ28rIZDIsXboU9erVg0QigaGhIYyMjHDt2rVyX5dXcyMSiWBra/vWcxpX5VifM2cOnj9/jvr166Np06aYOHEirl27JpSXSCT49ddfceTIEZiYmKBjx45YuHBhhdNdlKdjx45wdXVFly5d4OXlhRMnTkBLSwtjxowRyigpKWHw4MHYv38/srOzARR/MVVTU0P//v0V2k+vXr0QEhKCQ4cOYdasWRCJRMjOzn7jP7YACHO2laanp/fGHdWMMVah/puLHxLt/y2z+6J4WetXOsT6bihervG/my2inlvxMoeR8mW/WFW8XKf2/5bZdKpSaC9fvsTvv/+ORYsWoVu3bmjUqBE2bNgAqVSKjRs3AgAGDx6Mc+fOCVPeyGQy7NixQ/hh++zZs7h48SKCgoLQunVr1KtXD4sXL4auri52794t7Cs/Px9btmxBixYtyr00GwCGDRuGbt26oU6dOmjbti1WrFiBI0eOICsrS66cv78/unTpgqZNm2Lz5s1ISUmpsHOiZK5/XV1dmJqays39P2XKFHh6eqJOnTro0qULfv75Z2H++fj4eJiamsLV1RWWlpZo06aNcJm4vr4+lJWVhXkzS+Zcf9/q1auHhQsXokGDBuV+N3idX375Bc7OzmjUqBGmTJmC8+fPK3w5971797By5Up89913wrLk5GSYmJjIlSt5XtF3i8mTJ8Pc3Fzo7ElNTUVWVhYWLFgAd3d3HDt2DH369EHfvn2FQQ7JyckQi8VlOgxNTEyE/eTl5WHQoEFYtGhRme+1VeHm5obffvsNd+/ehUwmQ0hICPbu3ftGnfEymQxjx46Fk5MTmjRpUm6Zp0+f4ueff8aIESOEZYq0xcnJCYGBgRg4cCDEYjFMTU2ho6OD1atXC2Uqen0qem1yc3MxefJkDBo0CNra2uWWKU0kEuH48eOIioqClpYW1NTU8NtvvyE4OFj4W8LNzQ3nz5/H9u3bUVRUhISEBMyZMwcAqpRTNzc3/PHHH4iMjAQR4fLly/jjjz9QUFCAp0+fAig+L23cuBEbNmwot46SdlclJ4pISkpCYWEh+vbtC2trazRt2hSjRo2CpqYmgOJz15IlS9C3b1/Y2Nigb9++GDdunHDe2blzJ2QyGf744w80bdoUdnZ2CAgIQHx8vHD/hGXLlmHq1Kno27cv7OzssHbtWoUGyFSmomMkMzMTOTk5ePr0KYqKit55zj503DnLGGP/QQMGDMCGDRswcuRI7N27F8eOHRPmXZXJZFWuLygoCHl5eViyZAnq1asnPEpGHJY3elZZWbncuugN57x9VUlndemOwleVrGvUqJGwbODAgSAiBAUFAQB27doFHR0duLu7C2VkMhmMjY0REhJS7qPkC2CJ0iOVX2fevHkYP348OnbsiK1bt+Lo0aMICQlB48aN3+h1eR86duyI+/fv488//0STJk3wxx9/oGXLlvjjjz+EMmPHjsWdO3cwf/58qKmpYcaMGbCzs1N4LrVXaWpqwsHBAVeuXBHmUwOKRxJnZWVh//79ICJs27YNPXr0UPiLZO3ateHq6oru3bvD398fv/32G1atWoW9e/cKZV7taC3x6ly3Jar7OGeMMYGqWvGj9HlKWaV4mbKq4mVVxIqVrYL79++joKAATk5O/6tWVRVt2rTBrVu3AAD29vaws7MTRs+eOnUKqampwg9sV69eRVZWlnBzppJHXFyc3I0brayshI7RikRGRqJnz56wtLSElpYWnJ2dAaDMXOiOjo7C//X19dGgQQMhXkVdvXoVc+bMkYt5+PDhSEpKQnZ2Nvr374+cnBzUqVMHw4cPx759++RuXPQhKBmR+CZKd5CbmZkBQJkfscuTkJAAd3d39O/fX25O06pasGABduzYgX379gmjIEu+U/Xq1Qvjxo2Dvb09pkyZgh49elRpZPDUqVNhZ2en8BU6FVm+fDnq1auHhg0bQiwWY/To0fD29n6jH4d9fX1x48YN7Nixo9z1mZmZ8PDwQKNGjYQbBQOKtSUmJgZ+fn6YOXMmIiMjERwcjIcPH2LkyJEVbvM6BQUFGDBgAIhIuFdGZYgIvr6+MDY2xpkzZ3Dx4kX07t0bPXv2FDpeu3btikWLFmHkyJGQSCSoX7++MLq3KjmdMWMGunXrhrZt20JVVRW9evWCp6enUM+LFy8wZMgQbNiwAYaGhpXU9m41b94cnTt3RtOmTdG/f39s2LBB+OH/5cuXuH//Pnx8fOTOO3PnzhXOlVevXsW9e/egpaUlrNfX10dubi7u37+PjIwMJCUlwcHBQdiniooKWrdu/V7b+V9StU9Vxhj7DzMyMoK6urrc3U9L3L59G0pKSrCwsABQ/IfBvXv3ypQrb1lVWVlZ4dq1a5DJZHJfMG7fvi2sByruREpPT8eJEycwe/ZszJw5U1j+NncNDQwMRJMmTeDv719m3bp167Bt2zbMnj27SnWWtOPu3bv4/PPPheUFBQWIi4ur8KYKJbp16wZlZWX89ddfFd4UbMuWLVBRUZHreLWxsUGbNm2wc+dOjB49Gnv37kXv3r0hkUiEMnXr1sXx48fh5OSkcMerInbv3g0XFxdhFFGJ58+fl/ul79XXjIhw7969CkcKKaoqxzpQ/Aert7c3vL29kZWVhY4dO2LWrFn49ttvhTJ169bFjz/+iB9//BF3796Fvb09lixZgq1bt75RjCV/uGZlZUFDQwMA0KRJE7Ro0QKBgYGoXbs24uPjsXLlyjeqHyi+6dvSpUsxffp09OnTByKRSBiV8eodYRUZsc4YY+z1Bg8ejG3btmHKlCnYtm0b3N3dYWBgAKD4fG9mZiaM6iqt9OjGks+Eirx8+RJubm5wc3NDYGAgjIyMEB8fDzc3t2q52VVWVhZmz55d7o2k1NTUYGFhgdjYWBw/fhwhISEYNWoUFi1ahFOnTkFVVbWcGt+/V3Na8v2z9A+NFU33ULoNJd9NK/vBOTExES4uLmjXrp3cjb4AwNTUFCkpKXLLSp6/OrJ48eLFWLBgAY4fPy733cjQ0BAqKipyP84DxT/sl0wlYGpqivz8fDx//lzu+EpJSRH2c/LkSVy/fl0YuV2SD0NDQ0ybNk3h775GRkbYv38/cnNz8ezZM5ibm2PKlCkKXSlW2ujRo3Hw4EGcPn0atWvXLrP+xYsXcHd3h5aWFvbt2yf32ijSlvnz58PJyQkTJ04EUNzxrqGhgQ4dOmDu3LkwMzOr8PV59bUp6Zj9999/cfLkSYVGzZbEefDgQaSnpwvbrFmzBiEhIdi8ebNw06/x48dj3LhxSEpKgp6eHh4+fIipU6dWKadSqRR//vkn1q1bh5SUFJiZmWH9+vXQ0tISrmx7+PAhevbsKWxTcmyrqKggNjZWaHfJ9qVzUtENghWhrKyMkJAQnD9/HseOHcPKlSsxbdo0REREQF1dHQCwYcMGuc7Vku2A4vNSq1atyh1AU9mPW2+romNEW1sbUqkUysrKUFZWVug4+pTwyFnGGFOQsrIyunbtir///lvusvGUlBRs27YN7du3F74klMybU3qus7S0tArnX62K7t27Izk5WW5e1MLCQqxcuRKamprC6I+SD+ZXO5FKPpRfHbm3bNmyN4rn0aNHOH36NAYMGIAvv/yyzMPb2xv37t1DRERElept3bo1jIyMsHbtWrk/ljZt2lSmTeWxsLCAt7c3jh8/Xu6v8WvXrsXJkyfh4+NT5gvswIEDceHCBfz55594+vSp3JQGQPHI46KiIvz8889l6i0sLFQovvIoKyuXeV2CgoLk7i5c2pYtW+Smbdi9ezeSkpLQrVu3N9p/6TgUPdafPXsmt62mpiZsbW2Rl5cHoHiet1cvX6xbty60tLSEMlWVlpaG8+fPw9TUFMbGxnLrhgwZgmPHjmHZsmUwMDB4q1yoqKjgxx9/xK1bt/D3338LsQPA6dOnhXJFRUVl/nhkjDH2P3Xr1hXmLC1RUFCAS5cuyXWQff3117hx4wYiIyOxe/duubn6W7ZsieTkZKioqMDW1lbuUZVRa7dv38azZ8+wYMECdOjQAQ0bNqxwJOeFCxeE/6enp+POnTvClTnlUVVVLXMlRcuWLREbG1smZltbW6GTUyqVomfPnlixYgXCwsIQHh6O69evAyieq7yiqzNqSknnTelLxCua37eqEhIS0KlTJ7Rq1QoBAQFlRjo6Ojri9OnTcp3BISEhaNCggfADKgAsXLgQP//8M4KDg8uM9hOLxfjss8/K/Ah9584dYXBAq1atoKqqihMnTgjrY2NjER8fL4yo3rNnD65evYro6GhER0cLVw2dOXMGvr6+VW67mpoaatWqhcLCQuzZswe9evVSaDsiwujRo7Fv3z6cPHmy3Om0MjMz0bVrV4jFYhw4cKDMXKqKtKW8qZ5e/bvC0dFRLmdA8etTehR6Scfs3bt3cfz4ceEHGEWUTF31ahxKSkplOv1FIhHMzc0hlUqxfft2WFhYoGXLlgrvq4Sqqipq164NZWVl7NixAz169ICSkhIaNmyI69evCzmLjo7GF198ARcXF0RHR8PCwgI2NjYwNTWVy0lmZiYiIiLkcvImRCIRnJycMHv2bERFRUEsFmPfvn0wMTGBubk5Hjx4UOacU3JstGzZEnfv3oWxsXGZMjo6OtDR0YGZmZnc32+FhYVVmrO3IpUdI2KxGK1atZIrI5PJcOLEibfO2YeMR84yxtgr/vzzT+ES/9L8/Pwwd+5chISEoH379hg1ahRUVFSwbt065OXlYeHChULZSZMmYevWrejSpQvGjBkDDQ0N/PHHH7C0tERaWlqFo1oVMWLECKxbtw5eXl6IjIyEtbU1du/ejXPnzmHZsmXC/KlSqRSNGjXCzp07Ub9+fejr66NJkyZo0qSJMO9nQUEBatWqhWPHjiEuLu6N4tm2bRuICF988UW567t37w4VFRUEBgaW+fX2dVRVVTF37lx89913+PzzzzFw4EDExcUhICBA4V+9ly5ditu3b2PUqFEIDg4WRsgePXoUf//9N5ydnbFkyZIy2w0YMAATJkzAhAkToK+vX2bSemdnZ3z33XeYP38+oqOj0bVrV6iqquLu3bsICgrC8uXL8eWXXyrc1hI9evTAnDlz4O3tjXbt2uH69esIDAyssL36+vpo3749vL29kZKSgmXLlsHW1lbhy//exbHeqFEj4Y8ofX19XL58Gbt378bo0aMBFP+h07lzZwwYMACNGjWCiooK9u3bh5SUFHz11VcKxbl7925oamqCiJCYmIiNGzciPT0da9euLfNe+vrrrzFp0iTs27cP33///VuPOvLy8sLMmTPx66+/onfv3mjcuDHatm2LqVOnIi0tDfr6+tixY8cHdwkqY4x9SDQ0NPD9999j4sSJ0NfXh6WlJRYuXIjs7Gy5m+hYW1ujXbt28PHxQVFRkdx3C1dXVzg6OqJ3795YuHAh6tevj8TERBw6dAh9+vRR+HJbS0tLiMVirFy5EiNHjsSNGzfK/bEVKJ5X3cDAACYmJpg2bRoMDQ3Ru3fvCuu2trbGiRMn4OTkBIlEAj09PcycORM9evSApaUlvvzySygpKeHq1au4ceMG5s6di02bNqGoqAgODg5QV1fH1q1bIZVKhU5Ca2trnD59Gl999ZUwH315kpOTkZycLFyldf36dWhpacHS0vK1N4Z6E1KpFG3btsWCBQtgY2OD1NRUTJ8+/a3rLemYtbKywuLFi/HkyRNhXcmIua+//hqzZ8+Gj48PJk+ejBs3bmD58uVYunSpUPbXX3/FzJkzsW3bNlhbWwvzVJZcvg0U3+xt4MCB6NixI1xcXBAcHIx//vlHGJmto6MDHx8fjB8/Hvr6+tDW1saYMWPg6Ogo3ES35AfbEiXzkNrZ2cmNti3puM7KysKTJ08QHR0NsVgs/DARERGBhIQE2NvbIyEhAbNmzYJMJsOkSZMUypuvry+2bduGv//+G1paWkJ7dXR0IJVKhY7Z7OxsbN26FZmZmcKNXY2MjKCsrKxQW3r27Inhw4fj999/h5ubG5KSkjB27Fi0adMG5ubmAIq/Q5Z8v/bw8MCOHTtw+fJl4UfsgoICfPnll7hy5QoOHjyIoqIiIV59fX25G72Vx9HREXp6evD09MTMmTMhlUqxYcMGxMXFwcPDQyi3aNEiuLu7Q0lJCXv37sWCBQuwa9cuuemmYmJikJ+fj7S0NLx48UJ4nUpGtN65cwcXL16Eg4MD0tPT8dtvv+HGjRvCTbXU1NTKzOtbkqvSy8eOHYu5c+eiXr16sLGxwYwZM2Bubv7ac0llIiIicOLECXTt2hXGxsaIiIjAkydPhB+PZs+ejR9++EGYmi0vLw+XL19Geno6xo8fj8GDB2PRokXo1asX5syZg9q1a+Pff//F3r17MWnSJNSuXRt+fn5YsGCBMOXGb7/9ptAAlMryOnLkSKxatQqTJk3CsGHDcPLkSezatQuHDh0S6hg/fjw8PT3RunVrtGnTBsuWLcPLly/h7e0tlHmf57z3ghhjjBERUUBAAAGo8PHo0SMiIrpy5Qq5ubmRpqYmqaurk4uLC50/f75MfVFRUdShQweSSCRUu3Ztmj9/Pq1YsYIAUHJyssJxeXh4kJWVldyylJQU8vb2JkNDQxKLxdS0aVMKCAgos+358+epVatWJBaLCQD5+/sTEdHjx4+pT58+pKurSzo6OtS/f39KTEyUK1M6J3FxcRXG17RpU7K0tHxtGzp16kTGxsZUUFBAoaGhBICCgoLkysTFxRGAMu1Ys2YN2djYkEQiodatW9Pp06fJ2dmZnJ2dX7vPEnl5ebR06VJq1aoVaWhokLq6OrVs2ZKWLVtG+fn5FW7n5OREAOjbb7+tsMz69eupVatWJJVKSUtLi5o2bUqTJk2ixMREoYyVlRV5eHiUu72VlRV5enoKz3Nzc+nHH38kMzMzkkql5OTkROHh4WXaW5LD7du309SpU8nY2JikUil5eHjQv//+W2lO3uWxPnfuXGrTpg3p6uqSVCqlhg0b0i+//CLk9unTp+Tr60sNGzYkDQ0N0tHRIQcHB9q1a1elcfr7+5eJTUNDgxwdHV+7fffu3QlAue/LigAgX1/fctfNmjWLAFBoaCgREd2/f59cXV1JIpGQiYkJ/fTTTxQSEiJXhojI2dmZGjduXKY+T0/PMu9pxhhTRE5ODsXExFBOTk5Nh1JlOTk5NGbMGDI0NCSJREJOTk508eLFMuXWrFlDAGjo0KFl1mVmZtKYMWPI3NycVFVVycLCggYPHkzx8fFEVPy50bx58zLbOTs7k5+fn/B827ZtZG1tTRKJhBwdHenAgQMEgKKioojof5+z//zzDzVu3JjEYjG1adOGrl69+to2HjhwgGxtbUlFRUXuPB8cHEzt2rUjqVRK2tra1KZNG1q/fj0REe3bt48cHBxIW1ubNDQ0qG3btnT8+HFh2/DwcGrWrBlJJBJ63Z/v5X1mlve9qrTQ0NBKP49ezV2JmJgYcnR0JKlUSvb29nTs2DG5z8GSHKanpwvbREVFvfZ75eu+n5R29epVat++PUkkEqpVqxYtWLBAbr2VlVW5dZT+jktEtHHjRrK1tSU1NTVq3rw57d+/X259Tk4OjRo1ivT09EhdXZ369OlDSUlJFeaqvDYTUbmxlM57WFgY2dnZkUQiIQMDAxoyZAglJCRUuJ9XVZSzkte+JK7yHhW9FhW1ZcWKFdSoUSOSSqVkZmZGgwcPpsePH8uV2bVrF9WvX5/EYjE1btyYDh06JKwr+b5f3qP0d6jXuXTpEnXt2pX09fVJS0uL2rZtS4cPH5Yr4+LiQjo6OqSmpkYODg5l1hNVfJyUiImJIXt7e+F926tXL7p9+/ZrY/P09KRevXrJLZPJZDRjxgwyMTEhiURCnTt3ptjY2NfWU9l7MyYmhtzc3MjIyIgkEgnVr1+fVq5cKVcmMDCQ7O3tSSwWk56eHnXs2JH27t0rrE9KSqKhQ4cK5+Q6derQ8OHDKSMjg4iICgoKyM/Pj7S1tUlXV5fGjx9PQ4cOLdO+V1WW15L2lcRWp06dcs9TK1euJEtLS+H8e+HCBbn1b3LOq0xNfsaKiPiOFIwx9r6MHTsW69atQ1ZWVoU3CmKsMmFhYXBxcUFQUNAbjdD91PXp0wfXr19/J3M8M8bYhyQ3NxdxcXGwsbEpc1kye3dKPmfT09PlRkB+asLCwuDl5SU3hRFjrObxe7Nm1ORnLM85yxhj1SQnJ0fu+bNnz/DXX3+hffv23DHLWDVJSkrCoUOHMGTIkJoOhTHGGGOMMcYqxXPOMsZYNXF0dESnTp1gZ2eHlJQUbNy4EZmZmZgxY0ZNh8bYJycuLg7nzp3DH3/8AVVVVXz33Xc1HRJjjDHG2FuJj4+Xu2neq2JiYmBpafkeI6pe8+bNw7x588pd16FDBxw5cuQ9R8TY+8Gds4wxVk26d++O3bt3Y/369RCJRGjZsiU2btyIjh071nRojH1yTp06BW9vb1haWmLz5s3CjUMYY4yxqurUqRP+C7P/WVtbY+zYsTUdBnsNc3Nz4YZKFa3/lIwcORIDBgwod51UKn3P0dQcfm/+9/Ccs4wxxhhjjDH2EeA5ZxljjLHqwXPOMsYYY4wxxhhjjDHG2H8Md84yxhhjjDHGGGOMMcZYDeA5ZxUgk8mQmJgILS0tiESimg6HMcYYY4wx9gEjIrx48QLm5uZQUuLxMIwxxhirGHfOKiAxMREWFhY1HQZjjDHGGGPsI/Lo0SPUrl27psNgjDHG2AeMO2cVoKWlBaD4y5W2tnYNR1M8kvfJkycwMjLiX+KrCee4+nGOqx/nuPpxjqsf57j6cY7fD85z9fuQcpyZmQkLCwvh7wjGGGOMsYpw56wCSqYy0NbW/mA6Z3Nzc6GtrV3jXzw/VZzj6sc5rn6c4+rHOa5+nOPqxzl+PzjP1e9DzDFPiVZzvLy88Pz5c+zfv7+mQ3lnOnXqBC8vL3h5edV0KIyxUj7E9+bDhw9hY2ODqKgo2Nvb13Q4rBIfxrcWxhhjjDHGGGOfrE6dOmHs2LHvbbvKbNq0Cbq6uu+0zrCwMIhEIjx//rzScr169YKZmRk0NDRgb2+PwMDAdxrL+7BhwwZ06NABenp60NPTg6urKy5evChXhogwc+ZMmJmZQSqVwtXVFXfv3hXWP3z4ED4+PrCxsYFUKkXdunXh7++P/Pz8MvUsXrwY9evXh0QiQa1atfDLL7/IlQkLC0PLli0hkUhga2uLTZs2VRj7ggULIBKJyhxb69evR6dOnaCtrV3ha3nlyhV06dIFurq6MDAwwIgRI5CVlaVQzq5evYpBgwbBwsICUqkUdnZ2WL58uVyZvXv3okuXLjAyMoK2tjYcHR1x9OjRKrclOTkZQ4YMgampKTQ0NNCyZUvs2bNHrkxaWhoGDx4MbW1t6OrqwsfHp0xbdu3aBXt7e6irq8PKygqLFi1SqK0AcPbsWTg5OcHAwABSqRQNGzbE0qVL5cr8/vvvaNasmTAYztHREUeOHJErk5ubC19fXxgYGEBTUxP9+vVDSkpKmf1t2rQJzZo1g5qaGoyNjeHr61vltgQGBqJ58+ZQV1eHmZkZhg0bhmfPninc5o/J3r170bVrVxgYGEAkEiE6OrpMGUVyHx8fDw8PD6irq8PY2BgTJ05EYWGh3H6qckz/F3HnLGOMMcYYY4wx9p6cP38ezZo1w549e3Dt2jV4e3tj6NChOHjw4DvdDxHJdZC8a2FhYRg0aBBCQ0MRHh4OCwsLdO3aFQkJCUKZhQsXYsWKFVi7di0iIiKgoaEBNzc35ObmAgBu374NmUyGdevW4ebNm1i6dCnWrl2Ln376SW5ffn5++OOPP7B48WLcvn0bBw4cQJs2bYT1cXFx8PDwgIuLC6KjozF27Fh8++235XYAXbp0CevWrUOzZs3KrMvOzoa7u3uZ/ZdITEyEq6srbG1tERERgeDgYNy8eVPhEZORkZEwNjbG1q1bcfPmTUybNg1Tp07FqlWrhDKnT59Gly5dcPjwYURGRsLFxQU9e/ZEVFRUldoydOhQxMbG4sCBA7h+/Tr69u2LAQMGyNUzePBg3Lx5EyEhITh48CBOnz6NESNGCOuPHDmCwYMHY+TIkbhx4wbWrFmDpUuXysX7OhoaGhg9ejROnz6NW7duYfr06Zg+fTrWr18vlKlduzYWLFiAyMhIXL58GZ9//jl69eqFmzdvCmXGjRuHf/75B0FBQTh16hQSExPRt29fuX399ttvmDZtGqZMmYKbN2/i+PHjcHNzq1Jbzp07h6FDh8LHxwc3b95EUFAQLl68iOHDhyvU3o/Ny5cv0b59e/z6668Vlqks90VFRfDw8EB+fj7Onz+PzZs3Y9OmTZg5c6ZQpirH9H8WsUplZGQQAMrIyKjpUIiIqKioiJKSkqioqKimQ/lkcY6rH+e4+nGOqx/nuPpxjqsf5/j94DxXvw8px9X190NOTg7FxMRQTk6OsEwmk1FOQU6NPGQymUJxe3p6EgC5R1xcHBERhYWF0WeffUZisZhMTU1p8uTJVFBQ8NrtCgsLadiwYWRtbU1qampUv359WrZsWZl99urVq9x4QkNDy9Tr7+9PRES5ubn0448/krm5Oamrq1ObNm0oNDRU2Pbhw4fUo0cP0tXVJXV1dWrUqBEdOnSI4uLiytTp6empUH6IiLp3707e3t6vLePs7EwBAQEVri9p1+HDh6lly5akqqpKoaGh5ebCz8+PnJ2d5eoeM2YMTZw4kfT09MjExETIiaIKCwtJS0uLNm/eTETFx6apqSktWrRIKPP8+XOSSCS0ffv2CutZuHAh2djYCM9jYmJIRUWFbt++XeE2kyZNosaNG8stGzhwILm5uckte/HiBdWrV49CQkLI2dmZ/Pz8yq2vJJfp6elyy9etW0fGxsZy55lr164RALp7926F8b3OqFGjyMXF5bVlGjVqRLNnz65SWzQ0NGjLli1yy/T19WnDhg1EVJxXAHTp0iVh/ZEjR0gkElFCQgIREQ0aNIi+/PJLuTpWrFhBtWvXVvj9/6o+ffrQN99889oyenp69McffxBR8TGjqqpKQUFBwvpbt24RAAoPDyciorS0NJJKpXT8+PEK61SkLYsWLaI6deqUKVOrVq3XxlvZezMtLY2+/vprMjQ0JDU1NbK1taU///xTWB8fH0/9+/cnHR0d0tPToy+++EI4R5bYsGEDNWzYkCQSCTVo0IBWr14ttz4iIoLs7e1JIpFQq1ataO/evQSAoqKiXhs7EQnnr1fLKpL7w4cPk5KSEiUnJwtlfv/9d9LW1qa8vLwK91neMV3TyvuMfV94zlnGGGOMMcYY+0jlFeXBM9izRva92X0z1FTUKi23fPly3LlzB02aNMGcOXMAAEZGRkhISED37t3h5eWFLVu24Pbt2xg+fDjU1NQwa9asCreTyWSoXbs2goKCYGBggPPnz2PEiBEwMzPDgAEDKo2nXbt2WLZsGWbOnInY2FgAgKamJgBg9OjRiImJwY4dO2Bubo59+/bB3d0d169fR7169eDr64v8/HycPn0aGhoaiImJgaamJiwsLLBnzx7069cPsbGx0NbWhlQqVTiXGRkZsLOzU7j860yZMgWLFy9GnTp1oKenp/B2mzdvxvjx4xEREYHw8HB4eXnByckJXbp0UWj77OxsFBQUQF9fH0DxaNbk5GS4uroKZXR0dODg4IDw8HB89dVX5daTkZEh1AEA//zzD+rUqYODBw/C3d0dRARXV1csXLhQKBceHi63HwBwc3Mrc6m/r68vPDw84Orqirlz5yrUrtLy8vIgFovl5rUueZ3Pnj0LW1vbKtf5antfJZPJ8OLFizJlKmtLu3btsHPnTnh4eEBXVxe7du1Cbm4uOnXqBKA4Z7q6umjdurWwjaurK5SUlBAREYE+ffogLy8P6urqcvVKpVI8fvwY//77L6ytravU1qioKJw/f77C3BcVFSEoKAgvX76Eo6MjgOLRxgUFBXKvb8OGDWFpaYnw8HC0bdsWISEhkMlkSEhIgJ2dHV68eIF27dphyZIlsLCwAACF2uLo6IiffvoJhw8fRrdu3ZCamordu3eje/fuVWrnq2bMmIGYmBgcOXIEhoaGuHfvHnJycgAABQUFcHNzg6OjI86cOQMVFRXMnTsX7u7uuHbtGsRiMQIDAzFz5kysWrUKLVq0QFRUFIYPHw4NDQ14enoiKysLPXr0QJcuXbB161bExcXBz8/vrWIGFMt9eHg4mjZtChMTE6GMm5sbvv/+e9y8eRMtWrQoU29Fx/R/GXfOMsYYY4wxxhirNjo6OhCLxVBXV4epqamwfM2aNbCwsMCqVasgEonQsGFDJCYmYvLkyZg5c2aF2ykrK2P27NnCcxsbG4SHh2PXrl0Kdc6KxWLo6OhAJBLJ1RsfH4+AgADEx8fD3NwcADBhwgQEBwcjICAA8+bNQ3x8PPr164emTZsCAOrUqSNsX9LRYGxsXKX5bHft2iVcnv4uzJkzR+EO1dKaNWsGf39/AEC9evWwatUqnDhxQuG6Jk+eDHNzc6EjJzk5GQDkOm1Knpese9W9e/ewcuVKLF68WFj24MED/PvvvwgKCsKWLVtQVFSEcePG4csvv8TJkyeFfZW3n8zMTOTk5EAqlWLHjh24cuUKLl26pFB7yvP5559j/PjxWLRoEfz8/PDy5UtMmTIFAJCUlFTl+s6fP4+dO3fi0KFDFZZZvHgxsrKy5I5tRdqya9cuDBw4EAYGBlBRUYG6ujr27dsndCAnJyfD2NhYbhsVFRXo6+sLr4+bmxvGjRsHLy8vuLi44N69e1iyZInQXkU7Z2vXro0nT56gsLAQs2bNwrfffiu3/vr163B0dERubi40NTWxb98+NGrUSIhTLBaXeU+VPo4ePHgAmUyGefPmYfny5dDR0cH06dPRpUsXoYNTkbY4OTkhMDAQAwcORG5uLgoLC9GzZ0+sXr1aoXZWJD4+Hi1atBA6wkvnbefOnZDJZPjjjz+Em0gGBARAV1cXYWFh6Nq1K/z9/bFkyRJhOgEbGxvExMRg3bp18PT0xLZt2yCTybBx40aoqamhcePGePz4Mb7//vu3iluR3Ff03itZV57yjun/Ou6cZYwxxhhjjLGPlERZgs3um2ts32/j1q1bcHR0FDokAMDJyQlZWVl4/PgxLC0tK9x29erV+PPPPxEfH4+cnBzk5+e/9R3Jr1+/jqKiItSvX19ueV5eHgwMDAAAP/zwA77//nscO3YMrq6u6NevX7nzfSoqNDQU3t7e2LBhAxo3bvxW8ZcoPRKyKl5th5mZGVJTUxXadsGCBdixYwfCwsKgplb5aOryJCQkwN3dHf3795eb41MmkyEvLw9btmwRXpuNGzeiVatWiI2NRYMGDSqt+9GjR/Dz80NISMgbxwcAjRs3FkYYT506FcrKyvjhhx9gYmIiN5pWETdu3ECvXr3g7++Prl27lltm27ZtmD17Nv7++2+hI1XRtsyYMQPPnz/H8ePHYWhoiP3792PAgAE4c+aM8ONCZYYPH4779++jR48eKCgogLa2Nvz8/DBr1qwqtffMmTPIysrChQsXMGXKFNja2mLQoEHC+gYNGiA6OhoZGRnYvXs3PD09cerUKaGDtjIymQwFBQVYsWKFkMvt27fD1NQUoaGhcHNzU6gtMTEx8PPzw8yZM+Hm5oakpCRMnDgRI0eOxMaNGxVu76u+//579OvXD1euXEHXrl3Ru3dvtGvXDkDxTeLu3bsHLS0tuW1yc3Nx//59vHz5Evfv34ePj4/c+6KwsBA6OjoAis+lJTdCK1Ey8vhDU94xzbhzljHGGGOMMcY+WiKRSKGpBT4lO3bswIQJE7BkyRI4OjpCS0sLixYtQkRExFvVm5WVBWVlZURGRkJZWVluXcm0B99++y3c3Nxw6NAhHDt2DPPnz8eSJUswZsyYKu/v1KlT6NmzJ5YuXYqhQ4e+VeylaWhoyD1XUlICEcktKygoKLOdqqqq3HORSASZTFbp/hYvXowFCxbg+PHjch28JaOSU1JSYGZmJixPSUkp05GemJgIFxcXtGvXTu5mUUBxJ7GKiopcp3nJFBDx8fFo0KABTE1Ny9xBPiUlRZheIjIyEqmpqWjZsqWwvqioCKdPn8aqVauQl5dX5jWvyNdff42vv/4aKSkp0NDQgEgkwm+//SY3iroyMTEx6Ny5M0aMGIHp06eXW2bHjh349ttvERQUJHdZuSJtefjwIVatWoUbN24Inf7NmzfHmTNnsHr1aqxduxampqZlOt8LCwuRlpYmvHYikQi//vor5s2bh+TkZBgZGeHEiRMAUKX22tjYAACaNm2KlJQUzJo1S65zViwWCyN6W7VqhUuXLmH58uVYt24dTE1NkZ+fj+fPn8uN4ExJSRHiLDm+SnfmGhkZwdDQEPHx8Qq3Zf78+XBycsLEiRMBFP9goaGhgQ4dOmDu3Llyx3FVdOvWDf/++y8OHz6MkJAQdO7cGb6+vsII0latWiEwMLDMdkZGRsjKygIAbNiwAQ4ODnLrFT1m35QiuTc1NcXFixfltit5L5a+MgGo+JhmQNV+2mGMMcYYY4wxxqpILBajqKhIbpmdnR3Cw8PlOg7PnTsHLS0t1K5du8Ltzp07h3bt2mHUqFFo0aIFbG1tcf/+/beOp0WLFigqKkJqaipsbW3lHqU7GSwsLDBy5Ejs3bsXP/74IzZs2CDUCaBMveUJCwuDh4cHfv31V4wYMaJKsVeVkZFRmUvuo6Oj30ndCxcuxM8//4zg4OAyI3ZtbGxgamoqdIABQGZmJiIiIuRG9SUkJKBTp05o1aoVAgICyozIdHJyQmFhodxrfOfOHQCAlZUVgOJRgqX3AwAhISHCfjp37ozr168jOjpaeLRu3RqDBw9GdHT0G3VymZiYQFNTEzt37oSamprC0z/cvHkTLi4u8PT0xC+//FJume3bt8Pb2xvbt2+Hh4eH3DpF2pKdnQ0AZXKprKwsdLg7Ojri+fPniIyMFNafPHkSMpms3E7AWrVqQSwWY/v27XB0dISRkZFC7X1VyUhoRcu0atUKqqqqcq9vbGws4uPjhdfXyclJWF4iLS0NT58+FY4RRdqSnZ1dbs4AlPmBo6qMjIzg6emJrVu3YtmyZcKPEC1btsTdu3dhbGxc5ryjo6MDExMTmJub48GDB2XWl3R629nZ4dq1a8jNzRX2d+HChbeKF1As946Ojrh+/bpcR39ISAi0tbXlOstfd0wzAO/9FmQfoeq62+qb+pDuRPup4hxXP85x9eMcVz/OcfXjHFc/zvH7wXmufh9Sjqvr74eavJP02xo+fDh99tlnFBcXR0+ePKGioiJ6/Pgxqaurk6+vL926dYv2799PhoaG5O/v/9rtli9fTtra2hQcHEyxsbE0ffp00tbWpubNmwvbeXp6Uq9evSqM59y5cwSAjh8/Tk+ePKGXL18SEdHgwYPJ2tqa9uzZQw8ePKCIiAiaN28eHTx4kIiI/Pz8KDg4mB48eECRkZHk4OBAAwYMICKix48fk0gkok2bNlFqaiq9ePGi3H2fPHmS1NXVaerUqZSUlCQ8nj179tocVnZH+NDQUAJA6enpcsuDg4NJJBLR5s2b6c6dOzRz5kzS1tYmZ2dnubr9/PzktuvVqxd5enpWuL8FCxaQWCym3bt3y7WjdLsXLFhAurq69Pfff9O1a9eoV69eZGNjIxzDjx8/JltbW+rcuTM9fvxYrp4SRUVF1LJlS+rYsSNduXKFLl++TA4ODtSlSxehzIMHD0hdXZ0mTpxIt27dotWrV5OysjIFBwe/Np+vtjkpKYmioqJow4YNBIBOnz5NUVFRcq/NypUrKTIykmJjY2nVqlUklUpp+fLlFe6ntOvXr5ORkRF98803cm1NTU0VygQGBpKKigqtXr1arszz588Vbkt+fj7Z2tpShw4dKCIigu7du0eLFy8mkUhEhw4dEsq5u7tTixYtKCIigs6ePUv16tWjQYMGCeufPHlCv//+O926dYuioqLohx9+IDU1NYqIiFCovatWraIDBw7QnTt36M6dO/THH3+QlpYWTZs2TSgzZcoUOnXqFMXFxdG1a9doypQpJBKJ6NixY0KZkSNHkqWlJZ08eZIuX75Mjo6O5OjoKLevXr16UePGjencuXN0/fp16tGjBzVq1Ijy8/MVbktAQACpqKjQmjVr6P79+3T27Flq3bo1tWnT5rXtrOy9OWPGDNq/fz/dvXuXbty4QT169BDqfPnyJdWrV486depEp0+fpgcPHlBoaCiNGTOGHj16REREGzZsEI6z2NhYunbtGv3555+0ZMkSIiJ68eIFGRoa0jfffEM3b96kQ4cOka2tLQGgqKioCuN69uwZRUVF0aFDhwgA7dixg6KiouTef5XlvrCwkJo0aUJdu3al6OhoCg4OJiMjI5o6dapQ5k2O6ZpQk5+x3DmrAO6c/e/hHFc/znH14xxXP85x9eMcVz/O8fvBea5+H1KOuXO2rNjYWGrbti1JpVICQHFxcUREFBYWRp999hmJxWIyNTWlyZMnU0FBwWu3y83NJS8vL9LR0SFdXV36/vvvacqUKVXqnCUq7nQwMDAgAEKHcH5+Ps2cOZOsra1JVVWVzMzMqE+fPnTt2jUiIho9ejTVrVuXJBIJGRkZ0ZAhQ+jp06dCnXPmzCFTU1MSiUQVdmx6enoSgDKP0p2l5XnTzlkiopkzZ5KJiQnp6OjQuHHjaPTo0W/dOWtlZVVuO0p3rstkMpoxYwaZmJiQRCKhzp07U2xsrLA+ICCg3DpeHUeWkJBAffv2JU1NTTIxMSEvL68yndmhoaFkb29PYrGY6tSp89pcVdRmf3//cmMpXdeQIUNIX1+fxGIxNWvWjLZs2fLa/ShSv5WVlVxc5ZV53WtRXlvu3LlDffv2JWNjY1JXVy831mfPntGgQYNIU1OTtLW1ydvbW65z/cmTJ9S2bVvS0NAgdXV16ty5M124cEHh9q5YsYIaN25M6urqpK2tTS1atKA1a9bInaeHDRtGVlZWJBaLycjIiDp37izXMUtUfO4bNWoU6enpkbq6OvXp00euA5Go+Lw7bNgw0tXVJX19ferTpw/Fx8dXuS0rVqygRo0akVQqJTMzMxo8eDA9fvz4te2s7L35888/k52dHUmlUtLX16devXrRgwcPhPVJSUk0dOhQMjQ0JIlEQnXq1KHhw4fLfYYEBgYKx7eenh517NiR9u7dK6wPDw+n5s2bk1gsJnt7e9qzZ0+lnbMVvf9Kv4cVyf3Dhw+pW7duJJVKydDQkH788Ue58/ibHNM1oSY/Y0VEbzk2+z8gMzMTOjo6yMjIgLa2dk2Hg8LCXDx9+hzGxsZVnnScKUYmkyE1NZVzXI04x9WPc1z9OMfVj3Nc/TjH7wfnufp9SDmurr8fcnNzERcXBxsbm7e6qRH7OHXq1AleXl7w8vKq6VAYY6Xwe/PTUJOfsfzN8CNDRLh9eyp2xe/B+aQrkMkqn8+IMcYYY4wxxhhjjDH24eHO2Y9MTk48kl4m41iOPn69fx8nr05CcvLfKCx8UdOhMcYYY4wxxhhj/1kjR46EpqZmuY+RI0fWdHjvXOPGjStsb2BgYE2Hx9hHQ6WmA2BVo65uhcZ2v6L9nfN4lp8C7cJ7iH90D48TtiJBvQcamLRHQ/26NR0mY4wxxhhjjLF3yMvLC/b29jUdBnuNOXPmYMKECeWu+xCmSHzXDh8+jIKCgnLXmZiYvOdoag6/N9nb4s7Zj5CpZm141e4EAwNtpKc3QGrqYWRkP0LgUxFynlzGd7o74VjLCXp67aCkpFrT4TLGGGOMMcYYe0s8n+WHz9jYGMbGxjUdxntjZWVV0yF8EPi9yd4Wd85+xJSV1WBs7AYjo65IeB6Dxg9j8OBlJgxzL+L+gwioqvyJXB0PWJs4w0zjv/OrFWOMMcYYY4wxxhhjHwPunP0EiEQi1NZrDH+9xsjJT0PaU008SQ1GXn4a/kxMQ+rjUHgbpKOzlQu0NBvWdLiMMcYYY4wxxhhjjDF8IjcEO336NHr27Alzc3OIRCLs37+/wrIjR46ESCTCsmXL3lt875NUrI9a5gPRrNkG1LKZBC2xDpQgg+7Lk7h1azJu3ZqKhKcXIZMV1XSojDHGGGOMMcYYY4z9p30SI2dfvnyJ5s2bY9iwYejbt2+F5fbt24cLFy7A3Nz8PUZXM5SUVFDbyAm/GTkh6cVD5D59hqfPTuFFVgw2p+nhqdI9eNc2hWOt9lBSEtd0uIwxxhhjjDHGGGOM/ed8Ep2z3bp1Q7du3V5bJiEhAWPGjMHRo0fh4eHx2rJ5eXnIy8sTnmdmZgIAZDIZZDLZ2wf8lmQyGYhI4VhMNCwBDV+YmQ3Co+TDiHukguwiZTxL2IKrT7fA1LQvjIy6cidtKVXNMas6znH14xxXP85x9eMcVz/O8fvBea5+H1KOP4QYGGOMMfZx+CQ6Zysjk8kwZMgQTJw4EY0bN660/Pz58zF79uwyy588eYLc3NzqCLFKZDIZMjIyQERQUqrazBRaal0xzyYHl9MiYZJbgOycdDyIW4v9cRGQanwGF6OWkHAn7VvlmCmGc1z9OMfVj3Nc/TjH1Y9z/H5wnqvfh5TjFy9e1Oj+mbxOnTrB3t7+k53a7k1t2rQJmzZtQlhYWE2Hwhgr5UN9b/K5tBrRJwYA7du3T27ZvHnzqEuXLiSTyYiIyMrKipYuXVphHbm5uZSRkSE8Hj16RAAoPT2dioqKavxRUFBAiYmJVFBQ8Jb15FJy8mG6cGU49T+1mXqc2kGbLk6npKR/qKAgp8bb+SnkmB+cY87xp/3gHHOOP4UH55jz/Kk8PqQcp6enEwDKyMh4p3/r5OTkUExMDOXk5LzTej91zs7O5OfnV+37Ke9v0bdV2d+uRETPnj2j0aNHU/369UlNTY0sLCxozJgx9Pz589duFxAQQM7Ozu8u2LcUHR1NX331FdWuXZvU1NSoYcOGtGzZsjLlQkNDqUWLFiQWi6lu3boUEBAgt37evHnUunVr0tTUJCMjI+rVqxfdvn27TD3nz58nFxcXUldXJy0tLerQoQNlZ2cL6589e0Zff/01aWlpkY6ODg0bNoxevHhRbux3794lTU1N0tHRkVt+48YN6tu3L1lZWRGAcl/LzMxM8vPzI0tLS1JTUyNHR0e6ePFi5Qkjovz8fJo0aRI1adKE1NXVyczMjIYMGUIJCQlCmbi4OBo2bBhZW1uTmpoa1alTh2bOnEl5eXlVagsR0dKlS4XjrHbt2jR27Ngy56NVq1aRlZUVSSQSatOmDUVERMitv3fvHvXu3ZsMDQ1JS0uL+vfvT8nJyQq1l4ioZ8+eZGFhQRKJhExNTembb76Ra+/t27epU6dOZGxsTBKJhGxsbGjatGmUn58vV8+uXbuoQYMGJJFIqEmTJnTo0KEy+4qJiaGePXuStrY2qaurU+vWrenff/+tUltiY2Ppiy++IAMDA9LS0iInJyc6efLka9v4ob03S1R2Lk1MTKRBgwZRvXr1SCQSVVi2stzLZDKaMWMGmZqakpqaGnXu3Jnu3LkjrK/qMa2omvyM/eRHzkZGRmL58uW4cuUKRCKRQttIJBJIJJIyy5WUlGr8V/gSIpHoreNRUpLAxKQb9Aw/x8CH53Am9T7q03XEP7qGlNR/oG82FLUMHD+YNr9v7yLH7PU4x9WPc1z9OMfVj3Nc/TjH7wfnufp9KDmu6f2zYvn5+RCLP/2rAhMTE5GYmIjFixejUaNG+PfffzFy5EgkJiZi9+7d73Rf1ZnTyMhIGBsbY+vWrbCwsMD58+cxYsQIKCsrY/To0QCAuLg4eHh4YOTIkQgMDMSJEyfw7bffwszMDG5ubgCAU6dOwdfXF5999hkKCwvx008/oWvXroiJiYGGhgYAIDw8HO7u7pg6dSpWrlwJFRUVXL16Ve69O3jwYCQlJSEkJAQFBQXw9vbGiBEjsG3bNrm4CwoKMGjQIHTo0AHnz5+XW5ednY06deqgf//+GDduXLnt/vbbb3Hjxg389ddfMDc3x9atW+Hq6oqYmBjUqlXrtTnLzs7GlStXMGPGDDRv3hzp6enw8/PDF198gcuXLwMAbt++DZlMhnXr1sHW1hY3btzA8OHD8fLlSyxevFjhtmzbtg1TpkzBn3/+iXbt2uHOnTvw8vKCSCTCb7/9BgDYuXMnxo8fj7Vr18LBwQHLli2Dm5sbYmNjYWxsjJcvX6Jr165o3rw5Tp48CQCYMWMGevbsiQsXLih07nRxccFPP/0EMzMzJCQkYMKECfjyyy+FeFVVVTF06FC0bNkSurq6uHr1KoYPHw6ZTIZ58+YBAM6fP49BgwZh/vz56NGjB7Zt24bevXvjypUraNKkCQDg/v37aN++PXx8fDB79mxoa2vj5s2bUFNTAwCF29KjRw/Uq1cPJ0+ehFQqxbJly9CjRw/cv38fpqamlbb3Y5KXlwcjIyNMnz4dS5cuLbeMIrlfuHAhVqxYgc2bN8PGxgYzZsyAm5sbYmJioKamVqVj+qPx3ruDqxle+bVy6dKlJBKJSFlZWXgAICUlJbKyslKozoyMjGr55ftNFRUVUVJSEhUVFb3jevMoOeUQXYnypAsRX9CIM6vJLyKQ7j679U738zGorhyz/+EcVz/OcfXjHFc/znH14xy/H5zn6vch5bi6/n543aieotxcKsrNFa4WJCKSFRQUL3tlxNhry74y8qiislWVm5tLY8aMISMjI5JIJOTk5CSMDiwqKqJatWrRmjVr5La5cuUKiUQievjwIRERpaenk4+PjzBKzcXFhaKjo4Xy/v7+1Lx5c9qwYQNZW1uTSCQiorKjvbZs2UKtWrUiTU1NMjExoUGDBlFKSoqwPjQ0lADQwYMHqWnTpiSRSMjBwYGuX79eYftKRkaWPEr/rbl//35q0aKFMIpv1qxZVPD/OZTJZOTv708WFhYkFovJzMyMxowZI8Rdus6q/Pm+a9cuEovFwn7Ko8joPCsrK5ozZw4NGTKEtLS0yNPTU8hPenq6UC4qKooAUFxcnFC3jo4OBQcHU8OGDUlDQ4Pc3NwoMTFR4TYQEY0aNYpcXFyE55MmTaLGjRvLlRk4cCC5ublVWEdqaioBoFOnTgnLHBwcaPr06RVuExMTQwDo0qVLwrIjR46QSCSSG6VZEtM333wjtLki5Y2Czs7OJmVlZTp48KDc8pYtW9K0adMqrOt1Ll68SADkRni+auHChWRjY1Nm+eva4uvrS59//rncsvHjx5OTk5PwvE2bNuTr6ys8LyoqInNzc5o/fz4RER09epSUlJTkzo3Pnz8nkUhEISEhVWpnib///ptEIlGZkbGljRs3jtq3by88HzBgAHl4eMiVcXBwoO+++054PnDgQPrmm28qrFORtjx58oQA0OnTp4UymZmZBOC17VXkvbl69WqytbUliURCxsbG1K9fP2FdUVERzZs3TxhZ2qxZMwoKCpLb/vr16+Tu7k4aGhpkbGxM33zzDT158kRYn5WVRUOGDCENDQ0yNTWlxYsXV+kqhIrKVpZ7mUxGpqamtGjRImH98+fPSSKR0Pbt2yvcX0XHdFXU5MjZT/4n3SFDhuDatWuIjo4WHubm5pg4cSKOHj1a0+F9UJSUxDAx7o5mTX+HsvE3eEL6iM8lxN/zx737i5GX96SmQ2SMMcYYY4yVI8FvLBL8xkKWlSUsexESggS/sUjfsVOubOLESUjwG4uitDRhWdapU0jwG4u0v7bKlU2aNh0JfmNRmJQkLHsZfqHK8U2aNAl79uzB5s2bceXKFdja2sLNzQ1paWlQUlLCoEGDyoxIDAwMhJOTE6ysrAAA/fv3R2pqKo4cOYLIyEi0bNkSnTt3Rlqpdty7dw979uzB3r17ER0dXW4sBQUF+Pnnn3H16lXs378fDx8+hJeXV5lyEydOxJIlS3Dp0iUYGRmhZ8+eKCgoKLfOS5cuAQACAgKQlJQkPD9z5gyGDh0KPz8/xMTEYN26ddi0aRN++eUXAMCePXuwdOlSrFu3Dnfv3sX+/fvRtGlTAMDevXtRu3ZtzJkzB0lJSUgq9RpUJiMjA9ra2lBRefuLZRcvXozmzZsjKioKM2bMUHi77OxsLF68GH/99RdOnz6N+Ph4TJgwoUr7zsjIgL6+vvA8PDwcrq6ucmXc3NwQHh7+2joACPWkpqYiIiICxsbGaNeuHUxMTODs7IyzZ8/K7UdXVxetW7cWlrm6ukJJSQkRERHCspMnTyIoKAirV6+uUrtKFBYWoqioSBiNWUIqlcrFUxUZGRkQiUTQ1dV9bZnSeQUqb0u7du0QGRmJixcvAgAePHiAw4cPo3v37gCKR1VHRkbKvT5KSkpwdXUVXp+8vDyIRCK5K5XV1NSgpKT0Ru1NS0tDYGAg2rVrB1VV1XLL3Lt3D8HBwXB2dhaWVXYcyWQyHDp0CPXr14ebmxuMjY3h4OCA/fv3C+UVaYuBgQEaNGiALVu24OXLlygsLMS6detgbGyMVq1aVbm9JS5fvowffvgBc+bMQWxsLIKDg9GxY0dh/fz587FlyxasXbsWN2/exLhx4/DNN9/g1KlTAIDnz5/j888/R4sWLXD58mUEBwcjJSUFAwYMEOqYOHEiTp06hb///hvHjh1DWFgYrly58sYxl6gs93FxcUhOTpYro6OjAwcHh0rf568e0x+TT2Jag6ysLNy7d094HhcXh+joaOjr68PS0hIGBgZy5VVVVWFqaooGDRq871A/CsrKUrS27o81Rim4/OgwNF/kIS3tDJ4/v4gcgyFwsHCHWLn8Ex9jjDHGGGOMlfby5Uv8/vvv2LRpE7p16wYA2LBhA0JCQrBx40ZMnDgRgwcPxpIlSxAfHw9LS0vIZDLs2LED06dPBwCcPXsWFy9eRGpqqtAZsnjxYuzfvx+7d+/GiBEjABR3EG3ZsgVGRkYVxjNs2DDh/3Xq1MGKFSvw2WefISsrC5qamsI6f39/dOnSBQCwefNm1K5dG/v27ZPrwChRsj9dXV25S5Vnz56NKVOmwNPTU9jfzz//jEmTJsHf3x/x8fEwNTWFq6srVFVVYWlpiTZt2gAo7kxUVlaGlpZWlS5/fvr0KX7++WchJ2/r888/x48//ig8f/TokULbFRQUYO3atahbty4AYPTo0ZgzZ47C+z1//jx27tyJQ4cOCcuSk5NhYmIiV87ExASZmZnIycmBVCqVWyeTyTB27Fg4OTkJl0w/ePAAADBr1iwsXrwY9vb22LJlCzp37owbN26gXr16SE5OhrGxsVxdKioq0NfXR3JyMgDg2bNn8PLywtatW6Gtra1wu0rT0tKCo6Mjfv75Z9jZ2cHExATbt29HeHg4bG1tq1xfbm4uJk+ejEGDBlUY071797By5Uq5y78VacvXX3+Np0+fon379iAiFBYWYuTIkfjpp58AFB93RUVF5b4+t2/fBgC0bdsWGhoamDx5MubNmwciwpQpU1BUVFSlHx8mT56MVatWITs7G23btsXBgwfLlGnXrh2uXLmCvLw8jBgxQu7Yq+g4KnltU1NTkZWVhQULFmDu3Ln49ddfERwcjL59+yI0NBTOzs4KtUUkEuH48ePo3bs3tLS0oKSkBGNjYwQHB0NPT0/h9r4qPj4eGhoa6NGjB7S0tGBlZYUWLVoAKO40njdvHo4fPw5HR0cAxeeds2fPYt26dXB2dsaqVavQokULYZoHAPjzzz9hYWGBO3fuwNzcHBs3bsTWrVvRuXNnAP87B76tynJf8u/ryryqvGP6Y/NJjJy9fPkyWrRoIRyM48ePR4sWLTBz5swajuzjZqphgh4NvdGk8VJoaTZCcqEaFsdnYczFXUh5frOmw2OMMcYYY4z9v1rLl6HW8mVQKtW5qNWlC2otXwa9rwbKlTVftBC1li+DcqlRRprOzqi1fBn0h3wjV9bsl7motXwZVMzMhGUajm2rFNv9+/dRUFAAJycnYZmqqiratGmDW7duAQDs7e1hZ2cnjJ49deoUUlNT0b9/fwDA1atXkZWVBQMDA2hqagqPuLg43L9/X6jXysrqtR2zQPHcpj179oSlpSW0tLSEEXXx8fFy5Uo6NoDijtIGDRoI8Srq6tWrmDNnjlzMw4cPR1JSErKzs9G/f3/k5OSgTp06GD58OPbt24fCwsIq7aO0zMxMeHh4oFGjRpg1a9Yb11Na6dGjVaGuri50zAKAmZkZUlNTFdr2xo0b6NWrF/z9/dG1a9c32j8A+Pr64saNG9ixY4ewTCaTAQC+++47eHt7o0WLFli6dCkaNGiAP//8U+G6hw8fjq+//lpuxOKb+Ouvv0BEqFWrFiQSCVasWIFBgwZVee7qgoICDBgwAESE33//vdwyCQkJcHd3R//+/TF8+PAqtSUsLAzz5s3DmjVrcOXKFezduxeHDh3Czz//rHCMRkZGCAoKwj///ANNTU3o6Ojg+fPnaNmyZZXaO3HiRERFReHYsWNQVlbG0KFDQURyZXbu3IkrV65g27ZtOHToUJU67kqOkV69emHcuHGwt7fHlClT0KNHD6xdu1bhthARfH19YWxsjDNnzuDixYvo3bs3evbsWaXO6Fd16dIFVlZWqFOnDoYMGYLAwEBkZ2cDKO6ozM7ORpcuXeTOO1u2bBHOlVevXkVoaKjc+oYNGwIoPl/fv38f+fn5cHBwEPZZcg780FR0TH9sPomRs506dSrzRnydhw8fVl8wnyB1dRs0bDgPKY9OQS0+CZqyZPx79yfkGHWDhYUnlJWllVfCGGOMMcYYqzZK5dzQWKSiAlE5l7W/i7LVYfDgwcJNh7Zt2wZ3d3fhKsisrCyYmZkhLCyszHalL98uueFTRV6+fAk3Nze4ubkhMDAQRkZGiI+Ph5ubG/Lz899lcwAUxz179mz07du3zDo1NTVYWFggNjYWx48fR0hICEaNGoVFixbh1KlTFV6mXZEXL17A3d0dWlpa2LdvX5W3r8irOS3d8VSivOkeXt2/SCRS6O/2mJgYdO7cGSNGjBBGTpcwNTVFSkqK3LKUlBRoa2uXGTU7evRoHDx4EKdPn5Yb8Wf2/z80NGrUSK68nZ2d0EFvampapiO5sLAQaWlpwijmkydP4sCBA0KnHxFBJpNBRUUF69evlxuh/Tp169bFqVOn8PLlS2RmZsLMzAwDBw5EnTp1FNoe+F/H7L///ouTJ0+WO/o1MTERLi4uaNeuHdavXy+3TpG2zJgxA0OGDMG3334LAGjatClevnyJESNGYNq0aTA0NISysnK5r0/pkd9du3bF/fv38fTpU6ioqAijzavSXkNDQxgaGqJ+/fqws7ODhYUFLly4IPeDioWFBYDi17moqAgjRozAjz/+CGVl5QqPo5I4DQ0NoaKiUu4xUnr6hcracvLkSRw8eBDp6enCa7JmzRqEhIRg8+bNmDJlisJtLk1LSwtXrlxBWFgYjh07hpkzZ2LWrFm4dOkSsv5/aptDhw6VuaFcyVUHWVlZ6NmzJ3799dcydZuZmcldmf6uVZb7kn9TUlKE92rJc3t7e7ntXndMf2w+iZGzrPqJRCJ0suyEta27Y4hJ8Ydz6pMjiL4xDtFPrtdwdIwxxhhjjLEPVd26dSEWi3Hu3DlhWUFBAS5duiTX+fH111/jxo0biIyMxO7duzF48GBhXcuWLZGcnAwVFRXY2trKPQwNDRWO5fbt23j27BkWLFiADh06oGHDhhWO5rxw4X9z66anp+POnTuws7OrsG5VVVUUFRXJLWvZsiViY2PLxGxrayt0ckqlUvTs2RMrVqxAWFgYwsPDcf168d9YYrG4TJ3lyczMRNeuXSEWi3HgwIEyc5i+SyUjk0uP/Ktoft+qunnzJlxcXODp6SnMy1uao6MjTpw4IbcsJCRErlOOiDB69Gjs27cPJ0+ehI2NjVx5a2trmJubIzY2Vm75nTt3hPmNHR0d8fz5c0RGRgrrT548CZlMJowmDA8Pl7u3zZw5c6ClpYXo6Gj06dOnym3X0NCAmZkZ0tPTcfToUfTq1Uuh7Uo6Zu/evYvjx4+XmdYRKB5d2KlTJ7Rq1QoBAQFlRqkq0pbs7Owy2ykrKwMozrlYLEarVq3kXh+ZTIYTJ07IvT4lDA0Noauri5MnTyI1NRVffPGFQu19Vcko17y8vNeWKSgoEMpWdhyJxWJ89tlnrz1GFGlLyWjWV/OmpKQkxPKmVFRU4OrqioULF+LatWt4+PAhTp48iUaNGkEikSA+Pr7MOaekw7ply5a4efMmrK2ty5TR0NBA3bp1oaqqKje/csk58G1VlnsbGxuYmprKlcnMzERERITccVTZMf2x+SRGzrL3R09NB3q2I5GR6Yi4uJU4+tII527dRM/UOxjWsAeUlcv+ss4YY4wxxhj779LQ0MD333+PiRMnCvcFWbhwIbKzs+Hj4yOUs7a2Rrt27eDj44OioiK5zhpXV1c4Ojqid+/eWLhwIerXr4/ExEQcOnQIffr0UfjSe0tLS4jFYqxcuRIjR47EjRs3Krwse86cOTAwMICJiYkwMrB3794V1m1tbY0TJ07AyckJEokEenp6mDlzJnr06AFLS0t8+eWXUFJSwtWrV3Hjxg3MnTsXmzZtQlFRERwcHKCuro6tW7dCKpUKHUDW1tY4ffo0vvrqK0gkknI7oks6ZrOzs7F161ZkZmYiMzMTQHFHakkH2rtS0skza9Ys/PLLL7hz5w6WLFny1vXeuHEDn3/+Odzc3DB+/HhhfkllZWWhQ3jkyJFYtWoVJk2ahGHDhuHkyZPYtWuX3Ly0vr6+2LZtG/7++29oaWkJ9ejo6EAqlUIkEmHixInw9/dH8+bNYW9vj82bN+P27dvYvXs3gOIRku7u7hg+fDjWrl2LgoICjB49Gl999RXMzc2FMqVdvnwZSkpKwty2QPEcyDExMcL/ExISEB0dDU1NTWFO2aNHj4KI0KBBA9y7dw8TJ05Ew4YN4e3tXWnOCgoK8OWXX+LKlSs4ePAgioqKhPbq6+tDLBYLnVhWVlZYvHgxnjz5342+S0YpKtKWnj174rfffkOLFi3g4OCAe/fuYcaMGejZs6dwjI0fPx6enp5o3bo12rRpg2XLluHly5dybQkICICdnR2MjIwQHh4OPz8/jBs3TqFL5iMiInDp0iW0b98eenp6uH//PmbMmIG6desKHXeBgYFQVVVF06ZNIZFIcPnyZUydOhUDBw4URnP7+fnB2dkZS5YsgYeHB3bs2IHLly/Ljb6cOHEiBg4ciI4dO8LFxQXBwcH4559/5EbvV9YWR0dH6OnpwdPTEzNnzoRUKsWGDRsQFxcHDw+PSttbkYMHD+LBgwfo2LEj9PT0cPjwYchkMjRo0ABaWlqYMGECxo0bB5lMhvbt2yMjIwPnzp2DtrY2PD094evriw0bNmDQoEGYNGkS9PX1ce/ePezYsQN//PEHNDU14ePjg4kTJ8LAwADGxsaYNm2aQh2gJT/UZGVl4cmTJ4iOjoZYLBZ+iKss9yKRCGPHjsXcuXNRr1492NjYYMaMGTA3NxfOv4oc0x8dYpXKyMggAJSRkVHToRARUVFRESUlJVFRUVGNxlFQkEULo3dTj1M7aFO4L129NopevnxQozG9Kx9Kjj9lnOPqxzmufpzj6sc5rn6c4/eD81z9PqQcV9ffDzk5ORQTE0M5OTnvtN73IScnh8aMGUOGhoYkkUjIycmJLl68WKbcmjVrCAANHTq0zLrMzEwaM2YMmZubk6qqKllYWNDgwYMpPj6eiIj8/f2pefPmZbZzdnYmPz8/4fm2bdvI2tqaJBIJOTo60oEDBwgARUVFERFRaGgoAaB//vmHGjduTGKxmNq0aUNXr159bRsPHDhAtra2pKKiQlZWVsLy4OBgateuHUmlUtLW1qY2bdrQ+vXriYho37595ODgQNra2qShoUFt27al48ePC9uGh4dTs2bNSCKRUEV/vpfEW94jLi6uwngDAgLI2dn5tW2ysrKipUuXlll+9uxZatq0KampqVGHDh0oKChIbn8BAQGko6Mjt82+ffsqbANR8etXXhtK57Kkvfb29iQWi6lOnToUEBAgt76iXLxabv78+VS7dm1SV1cnR0dHOnPmjNz6Z8+e0aBBg0hTU5O0tbXJ29ubXrx4UWH85bU5Li6u3FhK533nzp1Up04dEovFZGpqSr6+vvT8+fMK96NI/QAoNDRUiKuiMlVpS0FBAc2aNYvq1q1LampqZGFhQaNGjaL09HS5citXriRLS0vhfXPhwgW59ZMnTyYTExNSVVWlevXq0ZIlS0gmkynU3mvXrpGLiwvp6+uTRCIha2trGjlyJD1+/Fgos2PHDmrZsiVpamqShoYGNWrUiObNm1fmvLlr1y6qX78+icViaty4MR06dKjM/jZu3Ei2trakpqZGzZs3p/3791e5LZcuXaKuXbuSvr4+aWlpUdu2benw4cOvbWdl780zZ86Qs7Mz6enpkVQqpWbNmtHOnTuF9TKZjJYtW0YNGjQgVVVVMjIyIjc3Nzp16pRQ5s6dO9SnTx/S1dUlqVRKDRs2pLFjxwrxv3jxgr755htSV1cnExMTWrhwYZlzaXkUeQ9XlnuZTEYzZswgExMTkkgk1LlzZ4qNjZXLT1WPaUXU5GesiKgKk7X+R2VmZkJHRwcZGRlvfBfGd0kmkyE1NRXGxsYfxNDta6mRKEpciYKCdCiJVKFnPgw2pu4fRGxv6kPL8aeIc1z9OMfVj3Nc/TjH1Y9z/H5wnqvfh5Tj6vr7ITc3F3FxcbCxsanWy9b/68LCwuDi4oL09HS5+Ww/NZs2bcKmTZvKnceXMVZz+L1ZM2ryM5a/GbK31sy4FZo0XgFd3c+QKyP8fD8B/lG7kJGXUdOhMcYYY4wxxhhjjDH2weLOWfZOqKpqo57tNBQaf4vn0MK97FzcuDUZL7Ju13RojDHGGGOMMcbYR+fMmTPQ1NSs8PGpmTdvXoVt7datW02Hx1i14RuCsXdGJBKhk3U3GGndQ1z8RqgWJOH27WmwshwBY2O3mg6PMcYYY4wxxirVqVMn/Bdm/7O3t4eXl1dNh8Feo3Xr1sINlv4LRo4ciQEDBpS7TiqVvudoag6/N/97uHOWvXONDWzRUHcmHsQtR3p6OE7HBeHfpBcY3bgnJCqSmg6PMcYYY4wxxv7z7O3tYW9vX9NhsNeQSqWwtbWt6TDeG319fejr69d0GDWO35v/PTytAasWyspS2NadDGPzIdiT3x5hGUVYf3UD8vOf1nRojDHGGGOMMcYYY4x9ELhzllUbkUgE61pfYrRtM1irpKNFUShiYibi5ct7NR0aY4wxxhhjjDHGGGM1jjtnWbVzMmuJhS17QUfdHPkFabh1+yfEpl6o6bAYY4wxxhhjjDHGGKtR3DnL3gupmhnsGi6AjnYLXM03w8Tb/2LbnaP/iYn2GWOMMcYYY4wxxhgrD3fOsvdGRUUD9evPwAtNZxCAh0/P4+HD1ZDJCms6NMYYY4wxxhhjjDHG3juVmg6A/beIRMr4oXFvNPo3BLpPruHJUxny8lNRz3YKlJXVazo8xhhjjDHGGGOMMcbeGx45y947JSUldLVxQ/3606CsJEVGxlWsi96A9Jy0mg6NMcYYY4wx9gnw8vJC7969azqMd6pTp07YtGlTTYfB2P+xd99xTV3vH8A/YSSEvZeyQcDFcIJaQVEcResuWgVnraPuVQeOOqpYR521iruOurco4KSIqCgiIAiiyFBkz5A8vz/8cb9GVlARtef9euXV5txzz33Ok9yLOTk5l3mHubk5QkJC6jsMKSEhIeDxeMjOzq7vUBgZsMFZpt5oaraErd0S3KRWOFdgiFn3zqKgOL2+w2IYhmEYhmEY5iNzc3PD5MmTP9l+Ndm5cyc0NTU/apuyDobExsbC3d0dBgYGUFJSgqWlJebNmweRSPRR46lr27ZtQ4cOHaClpQUtLS14eHjg1q1bUnWICAsWLICRkRGEQiE8PDzw+PFjbntSUhJGjhwJCwsLCIVCWFlZwc/PD6WlpRXa8ff3R6NGjSAQCNCgQQMsXbpUqk5ISAicnZ0hEAhgbW1d7UD2ihUrwOPxKry3/vzzT7i5uUFdXb3K1/LOnTvo0qULNDU1oaOjgzFjxiA/P1+mnEVGRsLb2xsmJiYQCoWwt7fHunXrpOocPXoUXbp0gZ6eHtTV1eHi4oILFy7Uui9paWkYOnQoDA0NoaKiAmdnZxw5ckSqztKlS+Hq6gplZeUqzwcej1fhceDAAZn66+vrW+n+TZo04eqIxWLMnz9f6j2wZMkSqfvTVNYGj8fDqlWratWXcpmZmWjYsGGF1/j69eto164ddHR0IBQKYWdnhzVr1sjU1y+RLO/3169fY8iQIVBXV4empiZGjhxZ4f1+//59dOjQAUpKSjAxMcHKlSulth89ehQtW7aEpqYmVFRU4OjoiD179tRl1744bHCWqVeqKjboZTsMmvIStEQEHsfMRlFRcn2HxTAMwzAMwzAMUycUFRUxbNgwXLx4EbGxsVi7di22bdsGPz+/j3ocIkJZWd3d3yMkJATe3t4IDg5GaGgoTExM0LVrV6SkpHB1Vq5cifXr12PLli0ICwuDiooKPD09UVxcDACIiYmBRCLB1q1b8fDhQ6xZswZbtmzBL7/8InWsSZMm4a+//oK/vz9iYmJw8uRJtG7dmtuemJiInj17wt3dHffu3cPkyZMxatSoSgc1w8PDsXXrVjRv3rzCtsLCQnTr1q3C8cu9ePECHh4esLa2RlhYGM6fP4+HDx/C19dXppxFRERAX18fe/fuxcOHDzF37lzMmTMHGzZs4OpcvXoVXbp0wdmzZxEREQF3d3d4eXnh7t27terLsGHDEBsbi5MnT+LBgwfo27cvBg4cKNVOaWkpBgwYgJ9++qnauAMCApCamso9ZJ2Vvm7dOqn9nj17Bm1tbQwYMICr89tvv2Hz5s3YsGEDHj16hN9++w0rV67EH3/8wdV5u43U1FTs2LEDPB4P/fr1q3VfAGDkyJGV5kxFRQUTJkzA1atX8ejRI8ybNw/z5s3Dn3/+KVN/vzQ1vd8BYMiQIXj48CECAwNx+vRpXL16FWPGjOG25+bmomvXrjAzM0NERARWrVqFhQsXSuVMW1sbc+fORWhoKO7fv4/hw4dj+PDh1X7p8J9DTI1ycnIIAOXk5NR3KEREJBaLKTU1lcRicX2H8tHkFGXQ/QcTKOxWL4qIGEy5eY/qNZ6vMcefG5bjusdyXPdYjusey3HdYzn+NFie697nlOO6+vxQVFRE0dHRVFRUxJVJJBISlZTVy0MikcgUt4+PDwGQeiQmJhIRUUhICLVq1Yr4fD4ZGhrSrFmzSCQSVbtfWVkZjRgxgszNzUlJSYkaNWpEa9eurXDM3r17VxpPcHBwhXb9/PyIiKi4uJimTZtGxsbGpKysTK1bt6bg4GBu36SkJPr2229JU1OTlJWVqXHjxnTmzBlKTEys0KaPj49M+SEimjJlCrVv377aOh07dqSAgIAqt5f36+zZs+Ts7EyKiooUHBxcaS4mTZpEHTt2lGp74sSJNGPGDNLS0iIDAwMuJ7IqKysjNTU12rVrFxG9eW8aGhrSqlWruDrZ2dkkEAjo77//rrKdlStXkoWFBfc8OjqaFBQUKCYmpsp9Zs6cSU2aNJEqGzRoEHl6ekqV5eXlkY2NDQUGBlLHjh1p0qRJlbZXnsusrCyp8q1bt5K+vr7Udeb+/fsEgB4/flxlfNUZN24cubu7V1uncePGtGjRolr1RUVFhXbv3i1Vpq2tTdu2bavQfkBAAGloaFR6bAB07NixGvshi2PHjhGPx6OkpCSurGfPnjRixAipen379qUhQ4ZU2U7v3r2pU6dOlW6rri9ERJs2baKOHTvS5cuXK32N39WnTx/64Ycfqq1jZmYmdZ14V1XXjXIPHjygbt26kYqKCunr69MPP/xAL1++5LaLxWJatmwZd81r3rw5HT58WOoYZ86cIRsbG1JSUiI3NzcKCAiQqX9EVb/fo6OjCQCFh4dzZefOnSMej0cpKSlE9CafWlpaVFJSwtWZNWsW2draVntMJycnmjdvXo2xfUqV/Y39VNgNwZjPgrqSHuztliEubgmy8uOxIDIQg62L0crAsb5DYxiGYRiGYZjPllgkwVH/O/Vy7L7TnaHAl6+x3rp16xAXF4emTZti8eLFAAA9PT2kpKSgR48e8PX1xe7duxETE4PRo0dDSUkJCxcurHI/iUSChg0b4vDhw9DR0cHNmzcxZswYGBkZYeDAgTXG4+rqirVr12LBggWIjY0FAKiqqgIAJkyYgOjoaBw4cADGxsY4duwYunXrhgcPHsDGxgbjx49HaWkprl69ChUVFURHR0NVVRUmJiY4cuQI+vXrh9jYWKirq0MoFMqUx/j4eJw/fx59+/aVqX5NZs+eDX9/f1haWkJLS0vm/Xbt2oWpU6ciLCwMoaGh8PX1Rbt27dClSxeZ9i8sLIRIJIK2tjaAN7NZ09LS4OHhwdXR0NBAmzZtEBoaiu+//77SdnJycrg2AODUqVOwtLTE6dOn0a1bNxARPDw8sHLlSq5eaGio1HEAwNPTs8JP/cePH4+ePXvCw8MDv/76q0z9eltJSQn4fD7k5P73I+Ty1/n69euwtraudZvv9vddEokEeXl5FerU1BdXV1ccPHgQPXv2hKamJg4dOoTi4mK4ubnVOsbx48dj1KhRsLS0xNixYzF8+HDweLxat7N9+3Z4eHjAzMxMKs4///wTcXFxaNSoESIjI3H9+nX8/vvvlbaRnp6OM2fOYNeuXbU+fnR0NBYvXoywsDA8efKkxvp3797FzZs33+u98raqrhsAkJ2djU6dOmHUqFFYs2YNioqKMGvWLAwcOBBBQUEAgOXLl2Pv3r3YsmULbGxscPXqVfzwww/Q09NDx44d8ezZM/Tt2xfjx4/HmDFjcPv2bUybNu2DYgbenFeamppo2bIlV+bh4QE5OTmEhYWhT58+CA0NxTfffAM+n8/V8fT0xG+//YasrKwK1yAiQlBQEGJjY/Hbb799cIxfCzY4y3w2FBTUYGu7GFse7EF8sTp+j7uP9XyCnpZTfYfGMAzDMAzDMMx70tDQAJ/Ph7KyMgwNDbnyTZs2wcTEBBs2bACPx4OdnR1evHiBWbNmYcGCBVXuJy8vj0WLFnHPLSwsEBoaikOHDsk0OMvn86GhoQEejyfVbnJyMgICApCcnAxjY2MAwPTp03H+/HkEBARg2bJlSE5ORr9+/dCsWTMAgKWlJbd/+eCZvr6+TOvZurq64s6dOygpKcGYMWO4AegPtXjxYpkHVN/WvHlzbmkFGxsbbNiwAZcvX5a5rVmzZsHY2JgbJE1LSwMAGBgYSNUzMDDgtr0rPj4ef/zxB/z9/bmyJ0+e4OnTpzh8+DB2794NsViMKVOmoH///tzgVVpaWqXHyc3NRVFREYRCIQ4cOIA7d+4gPDxcpv5UplOnTpg6dSpWrVqFSZMmoaCgALNnzwbw5qf3tXXz5k0cPHgQZ86cqbKOv78/8vPzpd7bsvTl0KFDGDRoEHR0dKCgoABlZWUcO3as1gPIixcvRqdOnaCsrIyLFy9i3LhxyM/Px88//1yrdl68eIFz585h//79UuWzZ89Gbm4u7OzsIC8vD7FYjKVLl2LIkCGVtrNr1y6oqanV+suMkpISeHt7Y9WqVTA1Na12cLZhw4Z4+fIlysrKsHDhQowaNapWx3pXddeNDRs2wMnJCcuWLePKduzYARMTE8TFxcHMzAzLli3DpUuX4OLiwu1//fp1bN26FR07dsTmzZthZWWF1atXAwBsbW3x4MGDDx78TEtLg76+vlSZgoICtLW1uXM4LS0NFhYWUnXKz8W0tDRucDYnJwcNGjRASUkJ5OXlsWnTpve6Tn2t2OAs81mRl1fCyKbDkBF5FM3LruBpwkko2syBpkaL+g6NYRiGYRiGYT478opy6Dvdud6O/SEePXoEFxcXqRl47dq1Q35+Pp4/fw5TU9Mq9924cSN27NiB5ORkFBUVobS0FI6Ojh8Uz4MHDyAWi9GoUSOp8pKSEujo6AAAfv75Z/z000+4ePEiPDw80K9fv0rXrpTFwYMHkZeXh8jISMyYMQP+/v6YOXPmB/UBgNQst9p4tx9GRkbIyMiQad8VK1bgwIEDCAkJgZKS0nsdPyUlBd26dcOAAQMwevRorlwikaCkpAS7d+/mXpvt27ejRYsWiI2Nha2tbY1tP3v2DJMmTUJgYOB7xwcATZo04WYYz5kzB/Ly8vj5559hYGAgNZtWFlFRUejduzf8/PzQtWvXSuvs378fixYtwokTJ7hBMln7Mn/+fGRnZ+PSpUvQ1dXF8ePHMXDgQFy7do0bJJTF/Pnzuf93cnJCQUEBVq1aVevB2V27dkFTU7PCerWHDh3Cvn37sH//fjRp0oRbM9jY2Bg+Pj4V2tmxYweGDBlS69dxzpw5sLe3xw8//FBj3WvXriE/Px///vsvZs+eDWtra3h7e9fqeG+r7roRGRmJ4OBgbibt2xISEiASiVBYWFhhILO0tBROTm8msj169Aht2rSR2l4+kPu5UFNTw71795Cfn4/Lly9j6tSpsLS0fK+Z3F8jNjjLfHaUFATwc+qPhIREZGWH4fHj5bCymgVtrVb1HRrDMAzDMAzDfFZ4PJ5MSwt8TQ4cOIDp06dj9erVcHFxgZqaGlatWoWwsLAPajc/Px/y8vKIiIiAvLx0TssHTkaNGgVPT0+cOXMGFy9exPLly7F69WpMnDix1sczMTEBADRu3BhisRhjxozBtGnTKhy7tlRUVKSey8nJgYikykQiUYX9FBUVpZ7zeDxIJJIaj+fv748VK1bg0qVLUgO85bOS09PTYWRkxJWnp6dXGEh/8eIF3N3duZ+4v83IyAgKCgpSg+b29vYA3sxItLW1haGhIdLT06X2S09P55aXiIiIQEZGBpyd//dFhlgsxtWrV7FhwwZuNp8sBg8ejMGDByM9PR0qKirg8Xj4/fffpWZD1iQ6OhqdO3fGmDFjMG/evErrHDhwAKNGjcLhw4ellmyQpS9JSUnYsGEDoqKi0KRJEwCAg4MDrl27ho0bN2LLli0yx/quNm3aYMmSJSgpKYFAIJBpHyLCjh07MHToUKmfvwPAjBkzMHv2bG6Zi2bNmuHp06dYvnx5hcHZa9euITY2FgcPHqx13EFBQXjw4AH++ecfLiYA0NXVxdy5cyvMxi+PJT09HQsXLvygwdnqrhv5+fnw8vKqdJarkZERoqKiAABnzpxBgwYNpLbLmv/3ZWhoWOELmrKyMrx+/Zo7v6s698q3lZOTk+NmbTs6OuLRo0dYvnw5G5z9f2xwlvksyckpwspqJhKe+CPpdSRmPbyLsTZ8tDBwqO/QGIZhGIZhGIapJT6fD7FYLFVmb2+PI0eOgIi42bM3btyAmpoaGjZsWOV+N27cgKurK8aNG8eVJSQkfHA8Tk5OEIvFyMjIQIcOHarc18TEBGPHjsXYsWMxZ84cbNu2DRMnTuQGnd5tVxYSiQQikQgSieSDB2ffpaenxw3wlLt3716Fwdj3sXLlSixduhQXLlyoMGPXwsIChoaGuHz5MjcYm5ubi7CwMPz0009cvZSUFLi7u6NFixYICAioMAO1Xbt2KCsrQ0JCAqysrAAAcXFxAMCtXeri4oKzZ89K7RcYGMjNHuzcuTMePHggtX348OGws7PDrFmz3ivn5T/d3rFjB5SUlGT+ifbDhw/RqVMn+Pj4YOnSpZXW+fvvvzFixAgcOHAAPXv2lNomS18KCwsBoEIu5eXlZRpwr869e/egpaVVq4HBK1euID4+HiNHjqywrbCwUOY4y2dMOzjUflzgyJEjKCoq4p6Hh4djxIgRuHbtGve+qkz5zO0PVdV1w9nZGUeOHIG5uTkUFCoO0TVu3BgCgQDJycno2LFjpW3b29vj5MmTUmX//vvvB8fs4uKC7OxsREREoEWLN79mDgoKgkQi4Wbquri4YO7cuRCJRNw1JTAwELa2ttWuef2x8vq1YIOzzGdLTk4B1lYzcDTvANKKFbD58W2sURFCTbVRzTszDMMwDMMwDPPZMDc3R1hYGJKSkqCqqgptbW2MGzcOa9euxcSJEzFhwgTExsbCz88PU6dO5QZrKtvPxsYGu3fvxoULF2BhYYE9e/YgPDy8wrqHNcVT/vNaBwcHKCsro1GjRhgyZAiGDRuG1atXw8nJCS9fvsTly5fRvHlz9OzZE5MnT0b37t3RqFEjZGVlITg4mJvFaWZmBh6Ph9OnT6NHjx4QCoWV/lR53759UFRURLNmzSAQCHD79m3MmTMHgwYN+igDpu/q1KkTVq1ahd27d8PFxQV79+5FVFQU95Po9/Xbb79hwYIF2L9/P8zNzbk1KFVVVaGqqgoej4fJkyfj119/hY2NDSwsLDB//nwYGxtzP21PSUmBm5sbzMzM4O/vj5cvX3Ltl8+68/DwgLOzM0aMGIG1a9dCIpFg/Pjx6NKlCzebduzYsdiwYQNmzpyJESNGICgoCIcOHeLWclVTU0PTpk2l4ldRUYGOjo5UeVpaGtLS0hAfHw/gzVIXampqMDU15dYU3rBhA1xdXaGqqorAwEDMmDEDK1askGmd4aioKHTq1Amenp6YOnUqlzN5eXno6ekBeLOUgY+PD9atW4c2bdpwdYRCITQ0NGTqi52dHaytrfHjjz/C398fOjo6OH78OAIDA3H69Gluv+TkZLx+/RrJyckQi8W4d+8eAMDa2hqqqqo4deoU0tPT0bZtWygpKSEwMBDLli3D9OnTa+zr27Zv3442bdpUiBsAvLy8sHTpUpiamqJJkya4e/cufv/9d4wYMUKqXm5uLg4fPsytq/qumvry7gDsq1evALwZ2Cx/7TZu3AhTU1PY2dkBAK5evQp/f/9aL+HwruquG+PHj8e2bdvg7e2NmTNnQltbG/Hx8Thw4AD++usvqKmpYfr06ZgyZQokEgnat2+PnJwc3LhxA+rq6vDx8cHYsWOxevVqzJgxA6NGjUJERAR27txZY1w1vd/t7e3RrVs3jB49Glu2bIFIJMKECRPw/fffc+tyDx48GIsWLcLIkSMxa9YsREVFYd26dVizZg13nOXLl6Nly5awsrJCSUkJzp49iz179mDz5s0flNevCjE1ysnJIQCUk5NT36EQEZFYLKbU1FQSi8X1HconUSQqpl9vB1Bg2PcUcecHKix8VufH/K/luD6wHNc9luO6x3Jc91iO6x7L8afB8lz3Pqcc19Xnh6KiIoqOjqaioqKP2u6nEBsbS23btiWhUEgAKDExkYiIQkJCqFWrVsTn88nQ0JBmzZpFIpGo2v2Ki4vJ19eXNDQ0SFNTk3766SeaPXs2OTg4cPv5+PhQ7969q41p7NixpKOjQwDIz8+PiIhKS0tpwYIFZG5uToqKimRkZER9+vSh+/fvExHRhAkTyMrKigQCAenp6dHQoUPp1atXXJuLFy8mQ0ND4vF45OPjU+lxDxw4QM7OzqSqqkoqKirUuHFjWrZsWY2va8eOHSkgIKDK7cHBwQSAsrKyKmxbsGABGRgYkIaGBk2ZMoUmTJhAHTt2lGp70qRJUvv07t27yj4QEZmZmRGACo/yXBIRSSQSmj9/PhkYGJBAIKDOnTtTbGwstz0gIKDSNt4dqkhJSaG+ffuSqqoqGRgYkK+vL2VmZlbov6OjI/H5fLK0tKw2V1X12c/Pr9JY3m5r6NChpK2tTXw+n5o3b067d++u9jiytG9mZiYVV2V1qnstKutLXFwc9e3bl/T19UlZWbnSWH18fCo9VnBwMBERnTt3jhwdHbn3qoODA23ZsqVW19ns7GwSCoX0559/Vro9NzeXJk2aRKampqSkpESWlpY0d+5cKikpkaq3detWEgqFlJ2dXWk7NfXlXZWdL+vXr6cmTZqQsrIyqaurk5OTE23atKnG/pqZmVV5HKKarxtxcXHUp08f0tTUJKFQSHZ2djR58mSSSCRE9OY8Wrt2Ldna2pKioiLp6emRp6cnXblyhWvj1KlTZG1tTQKBgDp06EA7duyo8npQTpb3e2ZmJnl7e5Oqqiqpq6vT8OHDKS8vT6qdyMhIat++PQkEAmrQoAGtWLFCavvcuXPJ2tqalJSUSEtLi1xcXOjAgQPV5rQ+1OffWB7RO4vPMBXk5uZCQ0MDOTk5UFdXr+9wIJFIkJGRAX19/VovOv6lEouLEBM7DwUF8eDzdWFntwJKAr06O95/McefGstx3WM5rnssx3WP5bjusRx/GizPde9zynFdfX4oLi5GYmIiLCwsPuimRsyXyc3NDb6+vvD19a3vUBiGeYu5uTl27tzJ1k/9wtXn31j2L0PmiyAvL0QjmwVQUmqAJ8XAnHtnUCDKr++wGIZhGIZhGIZhGIZhGOa9scFZ5ouhqKgBa5uFOFnmjvgSIbZGHQZR7RfbZxiGYRiGYRiGYZiPbezYsdyau+8+xo4dW9/hfXRNmjSpsr/79u2r7/AY5ovBbgjGfFGUlfQxzbY19sWdQmvRTTx7JoGpacU7PjIMwzAMwzAMw3xNfH194ejoWN9hMNVYvHhxlTfL+hyWSPzYzp49C5FIVOk2AwODTxxN/Zk8eTLMzc3rOwzmC8YGZ5kvTjPdRpgp1xbxCVeRln4SSkoNoa/vWd9hMQzDMAzDMAzD1Bm21uznT19fH/r6+vUdxidjZmZW3yF8FiZPnlzfITBfOLasAfNF0tZuh4YNhgAAzj45i3svH9RzRAzDMAzDMAzDMAzDMAxTO1/F4OzVq1fh5eUFY2Nj8Hg8HD9+nNsmEokwa9YsNGvWDCoqKjA2NsawYcPw4sWL+guY+SiMjAbgqXIvHCl1hX/sfbwsSKvvkBiGYRiGYRiGYRiGYRhGZl/F4GxBQQEcHBywcePGCtsKCwtx584dzJ8/H3fu3MHRo0cRGxuLXr161UOkzMfE4/HQ3WYwjPiAvdxjvEj8DWJxSX2HxTAMwzAMwzAMwzAMwzAy+SrWnO3evTu6d+9e6TYNDQ0EBgZKlW3YsAGtW7dGcnIyTE1NP0WITB1R5QuxysEdT2LOoqQoG4lJf8DKchp4PF59h8YwDMMwDMMwDMMwDMMw1foqBmdrKycnBzweD5qampVuLykpQUnJ/2Zg5ubmAgAkEgkkEsmnCLFaEokERPRZxPI5UBPowtJyOmLjFiDz1TVky1vB2bT3B7XJclz3WI7rHstx3WM5rnssx3WP5fjTYHmue59Tjj+HGBiGYRiG+TL85wZni4uLMWvWLHh7e0NdXb3SOsuXL8eiRYsqlL98+RLFxcV1HWKNJBIJcnJyQESQk/sqVqb4CPSgoj4IO9MTEfe0ANNKgtFIo8l7t8ZyXPdYjusey3HdYzmueyzHdY/l+NNgea57n1OO8/Ly6vX4jDQ3Nzc4Ojpi7dq19R3KZ2Xnzp3YuXMnQkJC6jsUhmHesnDhQiQlJWHnzp31HYoUc3NzTJ48GZMnT67vUL4+9JUBQMeOHat0W2lpKXl5eZGTkxPl5ORU2UZxcTHl5ORwj2fPnhEAysrKIrFYXO+PgPsBdPTcJsrLy673WD6nR1lZGc29c4J6XdlP2/+dQQUFye/dlkgkohcvXpBIJKr3fn2tD5ZjluOv4cFyzHL8NTxYjlmev5bH55TjrKwsAlDtZ473UVRURNHR0VRUVPRR2/3adezYkSZNmlTnx6nus+j7MjMzozVr1tRYb8yYMWRpaUlKSkqkq6tLvXr1okePHlW7T0BAAHXs2PHjBPoR3Lt3j77//ntq2LAhKSkpkZ2dHa1du7ZCveDgYHJyciI+n09WVlYUEBAgtX3ZsmXUsmVLUlVVJT09PerduzfFxMRUaOfmzZvk7u5OysrKpKamRh06dKDCwkJue2ZmJg0ePJjU1NRIQ0ODRowYQXl5eZXG/vjxY1JVVSUNDQ2p8qioKOrbty+ZmZkRgEpfy9zcXJo0aRKZmpqSkpISubi40K1bt2pOGL0Z45g5cyY1bdqUlJWVycjIiIYOHUopKSlcncTERBoxYgSZm5uTkpISWVpa0oIFC6ikpKRWfSEiWrNmDTVq1IiUlJSoYcOGNHnyZKnr0ZUrV+jbb78lIyOjKs8HHx8fAiD18PT0lKm/wcHBFfYtf7yds/Pnz1ObNm1IVVWVdHV1qW/fvpSYmFhtDACocePGterL23788cdKX2MvLy8yMTEhgUBAhoaG9MMPP0i9PpXx8/MjHx8fmXLyKdV0PZLl/U5EtGHDBjIzMyOBQECtW7emsLAwqe1FRUU0btw40tbWJhUVFerbty+lpaVx21+9ekWenp5kZGREfD6fGjZsSOPHj//gv7n1+Tf2PzNzViQSYeDAgXj69CmCgoKqnDULAAKBAAKBoEK5nJxcvX8Ln1aQhsD4s/A68BTn9v0N3k9D0cm5H7SVtOs1rs/F7KaeuB6zGtrFsYhPWIbG9qugoKD6Xm3xeLzP4jX/mrEc1z2W47rHclz3WI7rHsvxp8HyXPc+lxzX9/GZN0pLS8Hn8+s7jE+iRYsWGDJkCExNTfH69WssXLgQXbt2RWJiIuTl5T/aceoypxEREdDX18fevXthYmKCmzdvYsyYMZCXl8eECRMAAImJiejZsyfGjh2Lffv24fLlyxg1ahSMjIzg6ekJALhy5QrGjx+PVq1aoaysDL/88gu6du2K6OhoqKioAABCQ0PRrVs3zJkzB3/88QcUFBQQGRkpde4OGTIEqampCAwMhEgkwvDhwzFmzBjs379fKm6RSARvb2906NABN2/elNpWWFgIS0tLDBgwAFOmTKm036NGjUJUVBT27NkDY2Nj7N27Fx4eHoiOjkaDBg2qzdnbN0B3cHBAVlYWJk2ahF69euH27dsAgJiYGEgkEmzduhXW1taIiorC6NGjUVBQAH9/f5n7sn//fsyePRs7duyAq6sr4uLi4OvrCx6Ph99//x3A/27WPmLECPTt27fKuLt164aAgADueWXjL5VxdXVFamqqVNn8+fNx+fJltGzZEsCb90jv3r0xdepU7Nu3Dzk5OZgyZQr69u2LO3fuAADWrVuHFStWcG2UlZXBwcEBAwYM4Mpk7QsAHDt2DP/++y+MjY0rbHN3d8cvv/wCIyMjpKSkYPr06ejfv3+F/H4NZHm/Hzx4EFOnTsWWLVvQpk0brF27Fp6enoiNjYW+vj4AYMqUKThz5gwOHz4MDQ0NTJgwAX379sWNGzcAvPkb27t3b/z666/Q09NDfHw8xo8fj9evX1c4P78Yn3w4uI6hkm80SktL6bvvvqMmTZpQRkZGrdvMycmpk2++30ehqJAuXN9N/wz5hvYMdaVBJwbQ4NODacPdDfTkZVx9h/dZKC3Norv3RlDYrV70KGYRSSTiWrchFospNTWVxOLa78vIhuW47rEc1z2W47rHclz3WI4/DZbnuvc55biuPj9UN6tHVFJCopISkkgkXJm4rIxEJSVUJhLVom6pTHVrq7i4mCZOnEh6enokEAioXbt23Ew3sVhMDRo0oE2bNkntc+fOHeLxeJSUlERERFlZWTRy5EjS1dUlNTU1cnd3p3v37nH1/fz8yMHBgbZt20bm5ubE4/GIqOLM2d27d1OLFi1IVVWVDAwMyNvbm9LT07nt5bPzTp8+Tc2aNSOBQEBt2rShBw8eVNm/8pli5Q8zMzNu2/Hjx8nJyYkEAgFZWFjQwoULSfT/r4lEIiE/Pz8yMTEhPp9PRkZGNHHiRC5uvDOzT1aRkZEEgOLj46usI8vMWTMzM1q8eDENHTqU1NTUyMfHh8tPVlYWV+/u3bsEgJudGBAQQBoaGnT+/Hmys7MjFRUV8vT0pBcvXsjcByKicePGkbu7O/d85syZ1KRJE6k6gwYNqnbmZUZGBgGgK1eucGVt2rShefPmVblPdHQ0AaDw8HCu7Ny5c8Tj8SrMepw5cyb98MMPXJ+rUtmsw8LCQpKXl6fTp09LlTs7O9PcuXOrbKs6t27dIgD09OnTKuusXLmSLCwsKpRX15fx48dTp06dpMqmTp1K7dq1q/QYlY3NEL2Ztdq7d+8a+yGL0tJS0tPTo8WLF3Nlhw8fJgUFBam/BSdPniQej0elpaWVNUPHjh2Tuta8q6q+EBE9f/6cGjRoQFFRUTLNdD9x4kS1sRDVPHO2uusG0Zvr7bRp08jY2JiUlZWpdevWFBwcLNXGtWvXqH379tws6IkTJ1J+fj63PT09nb799ltSUlIic3Nz2rt3r8wz+YmqnmXbunVrGj9+PPdcLBaTsbExLV++nIiIsrOzSVFRkQ4fPszVefToEQGg0NDQKo+3bt06atiwoUyxVaU+Z85+FV/p5ufn4969e7h37x6AN9+U3Lt3D8nJyRCJROjfvz9u376Nffv2QSwWIy0tDWlpaSgtLa3fwN+DUEEID5chaLtiL2ymzYOtrj3KqAxXn11ByOzh+GfOQNx5FAwJ/XdvQqCoqAkb619QCDWsf6mN0/FH6zskhmEYhmEYhqlTp9Ysx6k1y1FaVMiVPb51E6fWLEdk4Dmpumc3+OPUmuUoys3hyp7cCcepNctx59wpqboXtqzDqTXLkZf5kitLfnCv1vHNnDkTR44cwa5du3Dnzh1YW1vD09MTr1+/hpycHLy9vSvMeNq3bx/atWsHMzMzAMCAAQOQkZGBc+fOISIiAs7OzujcuTNev37N7RMfH48jR47g6NGj3OfDd4lEIixZsgSRkZE4fvw4kpKS4OvrW6HejBkzsHr1aoSHh0NPTw9eXl4QiUSVthkeHg4ACAgIQGpqKvf82rVrGDZsGCZNmoTo6Ghs3boVO3fuxNKlSwEAR44cwZo1a7B161Y8fvwYx48fR7NmzQAAR48eRcOGDbF48WKkpqZWmDFYlYKCAgQEBMDCwgImJiYy7VMdf39/ODg44O7du5g/f77M+xUWFsLf3x979uzB1atXkZycjOnTp9fq2Dk5OdDW/t+vRENDQ+Hh4SFVx9PTE6GhodW2AYBrJyMjA2FhYdDX14erqysMDAzQsWNHXL9+Xeo4mpqa3GxMAPDw8ICcnBzCwsK4sqCgIBw+fBgbN26sVb/KlZWVQSwWQ0lJSapcKBRKxVMbNd0AvbzO23kFau6Lq6srIiIicOvWLQDAkydPcPbsWfTo0aPWMYaEhEBfXx+2trb46aefkJmZWes2AODkyZPIzMzE8OHDubIWLVpATk4OAQEBEIvFyMnJwZ49e+Dh4QFFRcVK29m+fTs8PDy4a42sJBIJhg4dihkzZqBJk5rvefP69Wvs27cPrq6uVcYii+quGwAwYcIEhIaG4sCBA7h//z4GDBiAbt264fHjxwCAhIQEdOvWDf369cP9+/dx8OBBXL9+nZuhDgC+vr549uwZgoOD8c8//2DTpk3IyMh475iBNzPvIyIipM5hOTk5eHh4cOdwREQERCKRVB07OzuYmppWeZ6/ePECR48eRceOHT8ovvr0VQzO3r59G05OTnBycgIATJ06FU5OTliwYAFSUlJw8uRJPH/+HI6OjjAyMuIeX+o08szn+Sgr5aFVM08scl2Epe2WorNiM2hnisCLT8aahxsx/cp0XHl2BWWSsvoOt16oqFjhmfY4PJPoYX9aPlJfXqvvkBiGYRiGYRjmP6mgoACbN2/GqlWr0L17dzRu3Bjbtm2DUCjE9u3bAbz5CfmNGzeQnJwM4M2gx4EDBzBkyBAAwPXr13Hr1i0cPnwYLVu2hI2NDfz9/aGpqYl//vmHO1ZpaSl2794NJycnNG/evNJ4RowYge7du8PS0hJt27bF+vXrce7cOeTn50vV8/PzQ5cuXdCsWTPs2rUL6enpOHbsWKVt6unpAQA0NTVhaGjIPV+0aBFmz54NHx8fWFpaokuXLliyZAm2bt0KAEhOToahoSE8PDxgamqK1q1bY/To0QDeDCbKy8tDTU0NhoaGMDQ0rDbPmzZtgqqqKlRVVXHu3DkEBgZ+lCUIOnXqhGnTpsHKygpWVlYy7ycSibBlyxa0bNkSzs7OmDBhAi5fvizz/jdv3sTBgwcxZswYriwtLQ0GBgZS9QwMDJCbm4uioqIKbUgkEkyePBnt2rVD06ZNAbwZVATe3HRp9OjROH/+PDfQXz54lZaWxv3EupyCggK0tbWRlpYGAMjMzISvry927txZ7bKJ1VFTU4OLiwuWLFmCFy9eQCwWY+/evQgNDZV5MP5tstwAPT4+Hn/88Qd+/PFHrkyWvgwePBiLFy9G+/btoaioCCsrK7i5ueGXX36pVYzdunXD7t27cfnyZfz222+4cuUKunfvDrFYXKt2gDeDqp6enmjYsCFXZmFhgYsXL+KXX36BQCCApqYmnj9/jkOHDlXaxosXL3Du3DmMGjWq1sf/7bffoKCggJ9//rnaerNmzYKKigp0dHSQnJyMEydO1PpYb6vuupGcnIyAgAAcPnwYHTp0gJWVFaZPn4727dtzS0ksX74cQ4YMweTJk2FjYwNXV1esX78eu3fvRnFxMeLi4nDu3Dls27YNbdu2RYsWLbB9+/ZKz7HaePXqFcRicaXncPl5lZaWBj6fX+HLhbfrlPP29oaysjIaNGgAdXV1/PXXXx8UX336KgZn3dzcQEQVHjt37oS5uXml24gIbm5u9R16rZUWleHm0Xhc2ngMd879CyKCtZY1xnSbj7Zrd0J+UC/Iq6oiJT8FmyI3YdOKgQg5ug7FJQX1HfonN9jSBZ20VTCMfwkpyetRUPCkvkNiGIZhGIZhmDrhNWUOvKbMAV+ozJXZtHaF15Q5cOjSXapujwnT4TVlDoTqGlyZpXMreE2ZA+fuXlJ1PcdOgteUOVDT0ePKTJs51iq2hIQEiEQitGvXjitTVFRE69at8ejRIwCAo6Mj7O3tudmzV65cQUZGBrcGZGRkJPLz86Gjo8MNQKqqqiIxMREJCQlcu2ZmZtzAaFUiIiLg5eUFU1NTqKmpcbOtygeGy7m4uHD/r62tDVtbWy5eWUVGRmLx4sVSMY8ePRqpqakoLCzEgAEDUFRUBEtLS4wePRrHjh1DWdn7TbAZMmQI7t69iytXrqBRo0YYOHAgiouL36utt709e7Q2lJWVpQZzjYyMZJ55FxUVhd69e8PPzw9du3Z9r+MDwPjx4xEVFYUDBw5wZRLJm1+Z/vjjjxg+fDicnJywZs0a2NraYseOHTK3PXr0aAwePBjffPPNe8cHAHv27AERoUGDBhAIBFi/fj28vb1rvXZ1+X12iAibN2+utE5KSgq6deuGAQMGcIN5svYlJCQEy5Ytw6ZNm3Dnzh0cPXoUZ86cwZIlS2oV5/fff49evXqhWbNm+O6773D69GmEh4cjJCSkVu08f/4cFy5cwMiRI6XK09LSMHr0aPj4+CA8PBxXrlwBn89H//79QUQV2tm1axc0NTXx3Xff1er4ERERWLduHXbu3Akej1dt3RkzZuDu3bu4ePEi5OXlMWzYsEpjkVV1140HDx5ALBajUaNGUtedK1eucNfKyMhI7Ny5U2q7p6cnJBIJEhMT8ejRIygoKKBFixbcMe3s7KqdjV0f1qxZgzt37uDEiRNISEjA1KlT6zuk9/afuSHY16K0uAwScSqKshNw63gScjKV0LZ3E6hoCGBgZo/vzOzRVVSIwKeBCL53DKa3E5Edvg9zi26hXet+6GrWFar897tB1pdGnsfD5CY9EPc4Ajk5d/A4fhmaNPaHoqJmfYfGMAzDMAzDMB+VQiUzJOXk5SFXyc2gPkbdujBkyBDupkP79+9Ht27doKOjA+DNUnZGRkaVDuC8PWBQfsOnqhQUFMDT0xOenp7Yt28f9PT0kJycDE9PzzpZ9i4/Px+LFi2q9IZCSkpKMDExQWxsLC5duoTAwECMGzcOq1atwpUrV2r9s2cNDQ1oaGjAxsYGbdu2hZaWFo4dOwZvb+8P6sO7OS0fNHx7cKmy5R7ejZ/H48k0IBUdHY3OnTtjzJgxmDdvntQ2Q0NDpKenS5Wlp6dDXV0dQqFQqnzChAk4ffo0rl69KjWz0sjICADQuHFjqfr29vbcAL2hoWGFgeSysjK8fv2am8EcFBSEkydPcjfVIiJIJBIoKCjgzz//xIgRI2rsKwBYWVnhypUrKCgoQG5uLoyMjDBo0CBYWlrKtD8g2w3QX7x4AXd3d7i6uuLPP/+U2iZLX+bPn4+hQ4dyM0ybNWuGgoICjBkzBnPnzn3vGyFaWlpCV1cX8fHx6Ny5s8z7BQQEQEdHB7169ZIq37hxIzQ0NLBy5UqurPwmc2FhYWjbti1XTkTYsWMHhg4dWutZ5teuXUNGRgZMTU25MrFYjGnTpmHt2rVISkriynV1daGrq4tGjRrB3t4eJiYm+Pfff6W+AKqN6q4b+fn5kJeXR0RERIWbAaqqvhkLys/Px48//ljpjF9TU1PExcW9V1w10dXVhby8fKXncPl5ZWhoiNLSUmRnZ0td29+uU678FwV2dnbQ1tZGhw4dMH/+fO4c/5KwwdkvjKqWEnqM74yLf2Xj9fMyZD4X48K2KDh0MoGlox54cjwoKyqjt3VvdDPqhFulWxHz8Bqea5ThYOxBnIg/AS85R7i3Gggd7erv/Pg14PHkYGU5DdGPZuBZYQHuRO2Gr8NPkJN7//VdGIZhGIZhGIaRnZWVFfh8Pm7cuMGt6SgSiRAeHo7Jkydz9QYPHox58+YhIiIC//zzD7Zs2cJtc3Z2RlpaGhQUFGBubv7escTExCAzMxMrVqzg1mMtv6v9u/79919u4CUrKwtxcXGwt7evsm1FRcUKP812dnZGbGwsrK2tq9xPKBTCy8sLXl5eGD9+POzs7PDgwQM4OzuDz+e/18+9y38tWlJSUut9a1I+Mzk1NRVaWloAUOX6vrX18OFDdOrUCT4+Pty6vG9zcXHB2bNnpcoCAwOlBrmICBMnTsSxY8cQEhICCwsLqfrm5uYwNjZGbGysVHlcXBy6d+/OHSc7OxsRERHc7MGgoCBIJBK0adMGwJt1ad9+bU6cOIHffvsNN2/eRIMGtf+sraKiAhUVFWRlZeHChQtSg4vVKR+Yffz4MYKDg7kvNN6WkpICd3d3tGjRAgEBARUGUmXpS2FhYYX9ygf/PmQW6PPnz5GZmVmrATUiQkBAAIYNG1bhS4Dq4iyfNV3uypUriI+PrzD7VhZDhw6tdP3joUOHSq2B+67yGD703KzquuHk5ASxWIyMjAx06NCh0n2dnZ0RHR1d5XXJzs4OZWVliIiIQKtWrQAAsbGxyM7O/qCY+Xw+WrRogcuXL3MzlSUSCS5fvsytd9uiRQsoKiri8uXL6NevH3fs5OTkagezP1Ze6wsbnP0CKfL5aNW/M4Ty6rh97ikyn+fj1ulHuHXyCDxG9IOe6Zu1cQQqaugweDpcJVNgnxqKE/EnkJKVBPHBQwjZcQgFo/qiq+tQGKpUv3bRl05BQRU6ZnOwKPImSkt40I87iG/tfqjvsBiGYRiGYRjmP0FFRQU//fQTZsyYAW1tbZiammLlypUoLCyUGhQxNzeHq6srRo4cCbFYLDUjzsPDAy4uLvjuu++wcuVKNGrUCC9evMCZM2fQp08fmX96b2pqCj6fjz/++ANjx45FVFRUlT/LXrx4MXR0dGBgYIC5c+dCV1e32p8+m5ub4/Lly2jXrh0EAgG0tLSwYMECfPvttzA1NUX//v0hJyeHyMhIREVF4ddff8XOnTshFovRpk0bKCsrY+/evRAKhdwgtrm5Oa5evYrvv/8eAoEAurq6FY775MkTHDx4EF27doWenh6eP3+OFStWQCgUvtfNmmpibW0NExMTLFy4EEuXLkVcXBxWr179we1GRUWhU6dO8PT0xNSpU7n1JeXl5bkB4bFjx2LDhg2YOXMmRowYgaCgIBw6dAhnzpzh2hk/fjz279+PEydOQE1NjWtHQ0MDQqEQPB4PM2bMgJ+fHxwcHODo6Ihdu3YhJiaGW7/Y3t4e3bp1w+jRo7FlyxaIRCJMmDAB33//PYyNjbk6b7t9+zbk5OS4tW2BN2sgR0dHc/+fkpKCe/fuQVVVlRsYu3DhAogItra2iI+Px4wZM2BnZ1ftAF+58hug37lzB6dPn+ZugA68WYqDz+cjJSUFbm5uMDMzg7+/P16+/N/N/cpnIsrSFy8vL/z+++9wcnJCmzZtEB8fj/nz58PLy4sb/MzPz0d8fDy3T/nN2svP+/KZ5P369YOhoSESEhIwc+ZM7gaBsgoKCkJiYmKl68T27NkTa9asweLFi+Ht7Y28vDz88ssvMDMz4+5TVG779u1o06aNVD/L1dQXHR2dCgPhioqKMDQ0hK2tLQAgLCwM4eHhaN++PbS0tJCQkID58+fDysrqvWfNAqj2uqGjo4MhQ4Zg2LBhWL16NZycnPDy5UtcvnwZzZs3R8+ePTFr1iy0bdsWEyZMwKhRo6CiooLo6GgEBgZiw4YNsLW1Rbdu3fDjjz9i8+bNUFBQwOTJkyvMTn+XLO/3qVOnwsfHBy1btkTr1q2xdu1aFBQUcO93DQ0NjBw5ElOnToW2tjbU1dUxceJEuLi4cLOez549i/T0dLRq1Qqqqqp4+PAhZsyYgXbt2n3Ql3f1ipga5eTkEADKycmp71CIiEgsFlNqaiqJxWKSiCUUdyuN/pq8mjaMmkLbJq2imH9TSSKWVNhPIpFQxINAOv7Tt7RnmCsNOjGAvj/1Pa2NWEtPs5LqoSef1p/x4TTh2joKDutP6ennq637do6ZusFyXPdYjusey3HdYzmueyzHnwbLc937nHJcV58fioqKKDo6moqKij5qu59CUVERTZw4kXR1dUkgEFC7du3o1q1bFept2rSJANCwYcMqbMvNzaWJEyeSsbExKSoqkomJCQ0ZMoSSk5OJiMjPz48cHBwq7NexY0eaNGkS93z//v1kbm5OAoGAXFxc6OTJkwSA7t69S0REwcHBBIBOnTpFTZo0IT6fT61bt6bIyMhq+3jy5EmytrYmBQUFMjMz48rPnz9Prq6uJBQKSV1dnVq3bk1//vknEREdO3aM2rRpQ+rq6qSiokJt27alS5cucfuGhoZS8+bNSSAQUFUf31NSUqh79+6kr69PioqK1LBhQxo8eDDFxMRUG29AQAB17Nix2jpmZma0Zs2aCuXXr1+nZs2akZKSEnXo0IEOHz5MACgxMZFrW0NDQ2qfY8eOVdkHojevH4AKj7dzSfTm9XF0dCQ+n0+WlpYUEBAgtb2yNgBUqLd8+XJq2LAhKSsrk4uLC127dk1qe2ZmJnl7e5Oqqiqpq6vT8OHDKS8vr8r4K+tzYmJipbG8nfeDBw+SpaUl8fl8MjQ0pPHjx1N2dnaVx5GlfQAUHBzMxVVVndr0RSQS0cKFC8nKyoqUlJTIxMSExo0bR1lZWVyd8nPn3YePjw8RERUWFlLXrl1JT0+PFBUVyczMjEaPHk1paWky9bect7c3ubq6Vrn977//JicnJ1JRUSE9PT3q1asXPXr0SKpOdnY2CYVC7lx8V019qcy758v9+/fJ3d2dtLW1SSAQkLm5OY0dO5aeP39ebf/8/PyqPU5N143S0lJasGABmZubk6KiIhkZGVGfPn3o/v37XJ1bt25Rly5dSFVVlVRUVKh58+a0dOlSbntqair17NmTBAIBmZqa0u7du6u8HpST5f1ORPTHH3+Qqakpd239999/pbYXFRXRuHHjSEtLi5SVlalPnz6UmprKbQ8KCiIXFxfS0NAgJSUlsrGxoVmzZkm9F99Hff6N5RF9wPzz/4jc3FxoaGggJyfnve/C+DFJJBJkZGRAX1+fm66f/iQFl3YcBE/BAQp8degYq6DVtxZQ1634zQYRIebJLZzIDMbdjLsAEbqcSYO2uS1aDZsGE2O7T92lT0JMhJQXR5D2Yg94PAXY2S6BmlrjSutWlmPm42I5rnssx3WP5bjusRzXPZbjT4Plue59Tjmuq88PxcXFSExMhIWFBZSUlD5au4y0kJAQuLu7Iysr67O7Ac7HtHPnTuzcubPWN2JiGKZuLVy4EElJSdi5c2d9h/KfUp9/Y9m/DL8SBpYNMHjJFLT9rjkUBfLIfFGAk2tP4sahy5CIpddV4fF4sLdqg9mtZ+O3Dr+hE+ygm14MiriP+dfn4Y+7fyA1P7WeelJ35Hk8mBj3g7Z2exCVISh2G/KLX9a8I8MwDMMwDMMwDMMwDMPUATY4+wUS55dWuuA2j8eDpaMePEc3hU4DOeRm3Ma9wDM4s/Ei8rMqXxTZXMMcP3othoOfP/K6u6BIWR7XU65jashU7D8wH6lp8ZXu96Xi8XiwMJ+IKPn22F7YBmseHINYXFzfYTEMwzAMwzAMwzCMlGvXrkFVVbXKx9dm2bJlVfa1/GZtDPM1YjcE+8KQmJBz6gmSsp9C3qM59G0r3gVSWZ0P9x8cwednIO7WQxTmaePi9ig4dDKBpZMeeDxehX0sHL+BheM3+Cb7CQ7HHUZcfBiERy4i9OglFEwagu9a+UCNr/Ypuljn5OWV0NzMGyeiw1Ba+gpPkjbB2nJKpXlhGIZhGIZhGOa/xc3N7YPuPv+lcHR0hK+vb32HwVSjZcuWuHfvXn2H8cmMHTsWAwcOrHRbTTej+pq4ubkhOzu7vsNgPiE2OPuFKXtdhKzsLDzKSkTsP0/R1dENBm5WkFdRlKonJy+PDt7d4dTNHeFnkvAyOQ+3zyXh/uXLcPfpAU19jUrbt9S0xKzWs/BY5Toe3fodzyWvcSXrGoKD76CfTT90Ne8KRTnFSvf9krTUaYgldlkoTtqHrNdipClbwMioT32HxTAMwzAMwzAM80k4OjrC0dGxvsNgqiEUCrm73P8XaGtrQ1tbu77DqHdubm71HQLzibFlDb4winrKeN7GCBpaujBU1Ib8kyJk7olG4b0MkLjit7uqWkpwG2wLxy4mKMmPxYu4cBxavAaJkRnVfhts06Q9vNYcQYcZ/jBTM0OBqAD77u/E/ll9cfvm0a/im+Tmes1gZjoSAPDs2W48zYyo54gYhmEYhmEYhmEYhmGY/xI2OPuFySkUYVN4KijnDARa6RBryoNEEmRdTcbFTceQ8eh5hX14cjw0amUI92HtoKKpAyU1O4SfeYob/8SjuEBU5bF4PB6ambTEim9W4MfmP8Iptgwa8emI2+SPxdf98CTnSV129ZPQ1+8BbZ0uOFfmjFmPYpCc87S+Q2IYhmEYhmEYhmEYhmH+I9jg7BemVCyBp04GGkqeQ+HleczKTsNtIwHixS/wIjcdIccvIftcIsT5pRX2NbG3xJClM9Hy228gJ8/Di8fZOLvxJuLCY6s9phxPDp1MO2HcmK1Q6dABD9roITonFr9c+wV/PfgLeYXZddTbusfj8WBsOgrp8o1QKJHH5ce7IBJl13dYDMMwDMMwDMMwDMMwzH8AG5z9wuipCTCiXy8IvpmCR8b9kA1lbEl9jV0CDSirqMBOyQQl8dnI3PMI+eFpkIjEUvsr8hXRuJ0xPIY3hpo2Hy+fXsGlP7fhyv4QSMSSao+toqWPLlNXY9qo7XA1dgWBcD/0JM791BtXLvwFCVW//+dKWUEJC5t1wRCVh2hCEYh7vARicXF9h8UwDMMwDMMwDMMwDMN85djg7JeIx4NRo5YYOdQH83raw1RbGSjNhHnBHmSXHkemEoHKJHhy7SFObjiItAfJFZrQ1FeG+w+NoGdmAJ6cAl7EyyFoTwzys0pqPLyuUBeTnCdhgcsCtI0h8HOLEHb1AOZdn4f4rPi66HGd01fWRu8mP0FBQQ0FBfGIf7IGEom45h0ZhmEYhmEYhmEYhmEY5j2xwdkvGI/HQxtLHfzh7YQfW6iCFJWRyONhVlEBDvDLEF36HFmFOYg9fxfZZ55AnCs98KqkKkSfGWPQZfRYCFVV8fpFAS5uj8LjcNnWXW2i0wT9lx6A5rdeeNzaCAk5CZh7Yy7+DPsD2Xkv66LLdUpJyRg21nNRCiG2vlTBsdSg+g6JYRiGYRiGYRiGYRiG+Yqxwdkv0PPnu5CQdR2iskIAgJwcD206dIXThN3QaD8GQr4CLpWW4CTfEKryYpjJ66PkSQ4y9z5CVmiy1FIHPB4P1i3N0WVkE+iaqKIo7yUCt/2B0+sPQlRS9c3CyvGFKnAbOR+rPP9Ax4YdAQAFR47hwoR+uBy044tb6kBNzR75BpOQIDHCpXzg8YvT9R0SwzAMwzAMwzC15Ovri++++66+w/io3NzcsHPnzvoOg2GYd/B4PCQlJdV3GFJ27twJTU3N+g6DkREbnP3ClJa+QkraKazLyMPIW0cR9ngr8vJjQEQQKGvgO9em+HNYC3RvZoiWklswE59AbPEeJMhJIBZJ8O+1UJz44wDS7yeDiLh2VTQEcBtiB33TIhBJkJaQgks7Y5D7qkimuDSVNDHOcRwWOc+F5SsFCHKLcSTpBGZfm43Y19XfcOxz083UBX31NTFE4QJyUnfg9eub9R0SwzAMwzAMw3zR3NzcMHny5E+2X03qYuAiJCQEPB4P2dnZMu8THx8PNTW1L3IQZdu2bejQoQO0tLSgpaUFDw8P3Lp1S6oOEWHBggUwMjKCUCiEh4cHHj9+zG1PSkrCyJEjYWFhAaFQCCsrK/j5+aG0tLRCO/7+/mjUqBEEAgEaNGiApUuXStUJCQmBs7MzBAIBrK2tqx3IXrFiBXg8XoX31p9//gk3Nzeoq6tX+VreuXMHXbp0gaamJnR0dDBmzBjk5+fLlLPIyEh4e3vDxMQEQqEQ9vb2WLdunVSdo0ePokuXLtDT04O6ujpcXFxw4cKFWvclLS0NQ4cOhaGhIVRUVODs7IwjR45w22XJfWxsLNzd3WFgYAAlJSVYWlpi3rx5EIlqnsj1rgMHDoDH41X6pcmjR4/Qq1cvaGhoQEVFBa1atUJy8v+WZ3RzcwOPx5N6jB07ltsuS14BYN++fXBwcICysjKMjIwwYsQIZGZmcttleU9/TZYuXQpXV1coKytXeQ1KTk5Gz549oaysDH19fcyYMQNlZWVSdT7GufdfxwZnvzByckpQNBgOyClDTBJIss7j0aNZiIqaiOjnp1BUmgVNZT7GuVnj+97fQqxlgUtKjlguLsRmcR5elOUgpygPuUHPkHPqCcqyi99qm4cuI/vAbehg6Jq3R15mMS7tjEbSg1cyx2dn3Bw9N52AxugRKG6gg6e5T7Hg5gLsOL8UOQWZNTfwmRhm4wFbDQeACAlPfkd29p36DolhGIZhGIZhmK+ISCSCt7c3OnToUCftE1GFQZSPKSQkBN7e3ggODkZoaChMTEzQtWtXpKSkcHVWrlyJ9evXY8uWLQgLC4OKigo8PT1RXPzmc2hMTAwkEgm2bt2Khw8fYs2aNdiyZQt++eUXqWNNmjQJf/31F/z9/RETE4OTJ0+idevW3PbExET07NkT7u7uuHfvHiZPnoxRo0ZVOqgZHh6OrVu3onnz5hW2FRYWolu3bhWOX+7Fixfw8PCAtbU1wsLCcP78eTx8+BC+vr4y5SwiIgL6+vrYu3cvHj58iLlz52LOnDnYsGEDV+fq1avo0qULzp49i4iICLi7u8PLywt3796tVV+GDRuG2NhYnDx5Eg8ePEDfvn0xcOBArh1Zcq+oqIhhw4bh4sWLiI2Nxdq1a7Ft2zb4+fnJ1N9ySUlJmD59eqXv9YSEBLRv3x52dnYICQnB/fv3MX/+fCgpKUnVGz16NFJTU7nHypUra5XXGzduYNiwYRg5ciQePnyIw4cP49atWxg9ejRXR5b39NektLQUAwYMwE8//VTpdrFYjJ49e6K0tBQ3b97Erl27sHPnTixYsICr87HOvf88YmqUk5NDACgnJ6e+QyEiIrFYTE9TUuhhxgNKeLKOwm/3p7BbvWjMtY008OpuOvdwPb1+/S+JxSIiiYTuJGXS+H0R9O36azTN/y86t3QVPV0dSmnr71D6xruUcSORxGViqWMU5ZdS8L4YOrj0Fu2Yto3ObDhMomJRreLMLs6mrZFb6Yd/+tOB79vS3yPc6OaDsySRSD5mOuqEWCymFy+eU2zcUrrwrzeNvbaJYl7eq++wvipisZhSU1NJLBbXXJl5LyzHdY/luO6xHNc9luNPg+W57n1OOa6rzw9FRUUUHR1NRUVFXJlEIiFJaVn9PGT8d72Pjw8BkHokJiYSEVFISAi1atWK+Hw+GRoa0qxZs0gkElW7X1lZGY0YMYLMzc1JSUmJGjVqRGvXrq1wzN69e1caT3BwcIV2/fz8iIiouLiYpk2bRsbGxqSsrEytW7em4OBgbt+kpCT69ttvSVNTk5SVlalx48Z05swZSkxMrNCmj49PtXmZOXMm/fDDDxQQEEAaGho15rFjx44UEBBQ5fbyfp09e5acnZ1JUVGRgoODK83FpEmTqGPHjlJtT5w4kWbMmEFaWlpkYGDA5URWZWVlpKamRrt27SKiN+9NQ0NDWrVqFVcnOzubBAIB/f3331W2s3LlSrKwsOCeR0dHk4KCAsXExFS5z8yZM6lJkyZSZYMGDSJPT0+psry8PLKxsaHAwEDq2LEjTZo0qdL2ynOZlZUlVb5161bS19eXus7cv3+fANDjx4+rjK8648aNI3d392rrNG7cmBYtWlSrvqioqNDu3bulyrS1tWnbtm1VHufd3FdmypQp1L59+2rrvK2srIxcXV3pr7/+qvS9OGjQIPrhhx+qbaO616oq7+Z11apVZGlpKVVn/fr11KBBg2pjf/s9XZW3r2mVuXfvHrm5uZGqqiqpqamRs7MzhYeHc9uvXbtG7du3JyUlJWrYsCFNnDiR8vPzue01XZeIiAICAsjExISEQiF999135O/vL9N1pXzfyuqePXuW5OTkKC0tjSvbvHkzqaurU0lJCRF9/HOvPlX2N/ZTUfiUA8HMx8OXk4OdTmPI6TWFqclIJL+8jsKkfBSLSiHIv4bH8ZegqKABOc3OaKD7DdZ974Sz91+Af3EztCgDF0SlsOV3hUlJGW6EBEL3rjY69OkMFWNNAICSiiI6ft8It8/dx63j0Ui8B5zZrInOPu2hqqVUbWzlNAQaGNN8DNxhh0eCxciiYqxPCMDN4miMaDoCWkpadZegj4DHk4elxTTszj2G5yU8rI+9ieV8eairN63v0BiGYRiGYRjmjTIJMrbcr5dD649tDijK11hv3bp1iIuLQ9OmTbF48WIAgJ6eHlJSUtCjRw/4+vpi9+7diImJwejRo6GkpISFCxdWuZ9EIkHDhg1x+PBh6Ojo4ObNmxgzZgyMjIwwcODAGuNxdXXF2rVrsWDBAsTGvlmCTVVVFQAwYcIEREdH48CBAzA2NsaxY8fQrVs3PHjwADY2Nhg/fjxKS0tx9epVqKioIDo6GqqqqjAxMcGRI0fQr18/xMbGQl1dHUKhsMoYgoKCcPjwYdy7dw9Hjx6tMebamD17Nvz9/WFpaQktLdk/c+3atQtTp05FWFgYQkND4evri3bt2qFLly4y7V9YWAiRSARtbW0Ab2bUpaWlwcPDg6ujoaGBNm3aIDQ0FN9//32l7eTk5HBtAMCpU6dgaWmJ06dPo1u3biAieHh4YOXKlVy90NBQqeMAgKenZ4WfTo8fPx49e/aEh4cHfv31V5n69baSkhLw+XzIyf3vR8jlr/P169dhbW1d6zbf7e+7JBIJ8vLyKtSpqS+urq44ePAgevbsCU1NTRw6dAjFxcVwc3N771ji4+Nx/vx59O3bt+aO/b/FixdDX18fI0eOxLVr1yr07cyZM5g5cyY8PT1x9+5dWFhYYM6cORWWP9i3bx/27t0LQ0NDeHl5Yf78+VBWVpa5Ly4uLvjll19w9uxZdO/eHRkZGfjnn3/Qo0ePKtt49z39voYMGQInJyds3rwZ8vLyuHfvHhQVFQG8mTncrVs3/Prrr9ixYwdevnyJCRMmYMKECQgICABQ83UpLCwMI0eOxPLly/Hdd9/h/PnztZ7dXJnQ0FA0a9YMBgYGXJmnpyd++uknPHz4EE5OTp/s3PvascHZr4CCggosjTyx05AQm5UE1YJiZL4KgagsG8depOHRs3/RR/UIujWwh+IP8/Dg4t84n9sGJyVFaFmWiwaSMhTmFSD3aCKopQFUWhqCpyAHnhwPrXo6QJHfHw+CY1BSqIHAHdFo08sCxjay/5G3af4NTP84grNR/4D3+jJupd3Cw1dRGK7zLdq37Asej1eH2fkwcnKKmNmsN/wfHMM34iuIexyCRjZzoa7OpuEzDMMwDMMwjCw0NDTA5/OhrKwMQ0NDrnzTpk0wMTHBhg0bwOPxYGdnhxcvXmDWrFlYsGBBlfvJy8tj0aJF3HMLCwuEhobi0KFDMg3O8vl8aGhogMfjSbWbnJyMgIAAJCcnw9jYGAAwffp0nD9/HgEBAVi2bBmSk5PRr18/NGvWDABgaWnJ7V8+gKOvr1/tGrKZmZnw9fXF3r17oa6uXmO8tbV48WKZB1Tf1rx5c25Ax8bGBhs2bMDly5dlbmvWrFkwNjbmBmrS0tIAQGpgp/x5+bZ3xcfH448//oC/vz9X9uTJEzx9+hSHDx/G7t27IRaLMWXKFPTv3x9BQUHcsSo7Tm5uLoqKiiAUCnHgwAHcuXMH4eHhMvWnMp06dcLUqVOxatUqTJo0CQUFBZg9ezYAIDU1tdbt3bx5EwcPHsSZM2eqrOPv74/8/Hyp97YsfTl06BAGDRoEHR0dKCgoQFlZGceOHatyALmy3JdzdXXFnTt3UFJSgjFjxnBfltTk+vXr2L59O+7du1fp9oyMDOTn52PFihX49ddf8dtvv3GDv8HBwejY8c1NxwcPHgwzMzMYGxvj/v37mDVrFmJjY6v8YqOyvLZr1w779u3DoEGDUFxcjLKyMnh5eWHjxo1Vxv/ue/p9JScnY8aMGbCzswPw5vwqt3z5cgwZMoQbzLSxscH69evRsWNHbN68GRkZGTVel9atW4du3bph5syZAIBGjRrh5s2bOH/+/AfFXdV5Vb6tujof+9z72rHB2a+IPI+HxtoWgLYFTBoOQ1b2HRQlPIe4UAR1UTSeJl8Dj6cIDVdXjCxVxtn7fNzO5MFE9BSGEhuIRWUoCE9HcXw2FFz1oGmpBwBw7OKKRm1aIvR4AjKf5+PawRgYWhah/SA3yMvLtmyxQE0DfVxGwjnXA1sit0B85z4yQ37D323PoOvPK6Er1K3L1HwQdb4QC536Ie5xLHJz7yEubjFMLGbAQKdNfYfGMAzDMAzD/NcpyL2ZwVpPx/4Qjx49gouLi9RkjXbt2iE/Px/Pnz+Hqalplftu3LgRO3bsQHJyMoqKilBaWgpHR8cPiufBgwcQi8Vo1KiRVHlJSQl0dHQAAD///DN++uknXLx4ER4eHujXr1+t108cPXo0Bg8ejG+++eaD4q1Ky5Yt32u/d/thZGSEjIwMmfZdsWIFDhw4gJCQkAprhcoqJSUF3bp1w4ABA6TWAZVIJCgpKcHu3bu512b79u1o0aIFYmNjYWtrW2Pbz549w6RJkxAYGPje8QFAkyZNuBnGc+bMgby8PH7++WcYGBhIzaaVRVRUFHr37g0/Pz907dq10jr79+/HokWLcOLECejr69eqL/Pnz0d2djYuXboEXV1dHD9+HAMHDsS1a9e4LxfKVZX7cgcPHkReXh4iIyMxY8YM+Pv7cwOBVcnLy8PQoUOxbds26OpW/nlfIpEAAHr37o0pU6YAABwdHXHz5k1s2bKFG5wdM2YMt0+zZs1gZGSEzp07IyEhAVZWVlJtVpXX6OhoTJo0CQsWLICnpydSU1MxY8YMjB07Ftu3b68Q28d4T5ebOnUqRo0ahT179sDDwwMDBgzg4o6MjMT9+/exb98+rj4RQSKRIDExEU+ePKnxuvTo0SP06dNHaruLi8sHD85+DB/r3PvascHZrxSPJw9trVZY27IVnuRlQlggRGZmEAoLnyDwVSauliXDxTIZrloasL4bAaIIHBBrozsaoig9Aw8PXIOjXTM092oDnqI8lNX5cBtii8jLz3Dn7HG8evoUL58+x7c/e0NJRVHmuMzUzfBru19x9eFC5PECkVCagplXZ2JU01FwbeBahxn5MHJyAjSymYuEJ6sRmZmA36MfYYplMVo16FjfoTEMwzAMwzD/YTweT6alBb4mBw4cwPTp07F69Wq4uLhATU0Nq1atQlhY2Ae1m5+fD3l5eUREREBeXjqn5csejBo1Cp6enjhz5gwuXryI5cuXY/Xq1Zg4caLMxwkKCsLJkye5GYrlAzEKCgr4888/MWLEiA/qh4qKitRzOTk5EJFUmUgkqrBf+c+sy/F4PG7wrDr+/v5YsWIFLl26JDXAWz4rOT09HUZGRlx5enp6hYH0Fy9ewN3dHa6urvjzzz+lthkZGUFBQUFqcMre3h7AmxmJtra2MDQ0RHp6utR+6enp3PISERERyMjIgLOzM7ddLBbj6tWr2LBhA0pKSiq85lUZPHgwBg8ejPT0dKioqIDH4+H333+XmkVdk+joaHTu3BljxozBvHnzKq1z4MABjBo1CocPH5aauSlLX5KSkrBhwwZERUWhSZMmAAAHBwdcu3YNGzduxJYtW7h9q8t9ORMTEwBA48aNIRaLMWbMGEybNq3anCUkJCApKQleXl5cWfn7SUFBAbGxsTAxMYGCggIaN24sta+9vT2uX79eZdtt2ryZKBUfHy81OFtdXpcvX4527dphxowZAN58GaGiooIOHTrg119/lXqPVvWefl8LFy7E4MGDcebMGZw7dw5+fn44cOAA+vTpg/z8fPz444/4+eefK+xnamqK+/fv13hdqiuGhoa4deuWVFn5eVZ+fn/Kc+9rxgZn/wMs1XQANS8YGXqhsDARVxPuQy67DAb0HNa611HsrISHCdY4XyLEv3JF6FSSCYFEgqLEbGTuj4F6J1PwTdQgLy8Hpy6mKM61RWTgc5QU6SBwRzRc+lhBt6HsFwV5OXm4j12CZy7dcSv7FArynmDd3XW48zQUvs6joar08X/a8zHIyfFhbTUTO3NPIa+kBP8k3YKpQj4MDHrWd2gMwzAMwzAM81nj8/kQi8VSZfb29jhy5AiIiJs9e+PGDaipqaFhw4ZV7nfjxg24urpi3LhxXFlCQsIHx+Pk5ASxWIyMjIxK7ypfzsTEBGPHjsXYsWMxZ84cbNu2DRMnTgSfzweACu2+KzQ0VKrOiRMn8Ntvv+HmzZto0KBBrfohCz09PURFRUmVvb3m5YdYuXIlli5digsXLlSYsWthYQFDQ0NcvnyZG4zNzc1FWFiY1N3hU1JS4O7ujhYtWiAgIKDCDNR27dqhrKxMapZkXFwcAMDMzAzAm1mCZ8+eldovMDAQLi4uAIDOnTvjwYMHUtuHDx8OOzs7zJo1670Gh8p/yr1jxw4oKSnJvPzDw4cP0alTJ/j4+GDp0qWV1vn7778xYsQIHDhwAD17Sn/elKUvhYWFAFAhl/Ly8lID7jXlvjISiQQikQgSiaTavNnZ2VWIc968ecjLy8O6detgYmICPp+PVq1acWs/l4uLi+Ne28qUL5Pw9oBqTXktLCyEgoL0EFh5/G9/eVHde/pDNGrUCI0aNcKUKVPg7e2NgIAA9OnTB87OzoiOjq5yuQlZrkv29vYVvpz6999/PzhmFxcXLF26FBkZGdzM7cDAQKirq3MD6vVx7n2N2ODsFyi/NP+991VWtsD0ZhbwLSlCWZ4Rcl5fBHAPfA0xRM/z8TQpH4HyBF9RPLTJDuLcUmQdj4d8I3VodTSFvJIiXPt3g1VLZ9y9kI7czGIE741B02/0YediUqv1Y00cXLFI0gZH44/iaOwRyB04hRP7LsBxsh+a2LR77z7WJR5PHvOaf4uAmJNwKAzF0+TrEImy0KDBYPB4H/azLoZhGIZhGIb5WpmbmyMsLAxJSUlQVVWFtrY2xo0bh7Vr12LixImYMGECYmNj4efnh6lTp3KDRJXtZ2Njg927d+PChQuwsLDAnj17EB4eDgsLi1rFk5+fj8uXL8PBwQHKyspo1KgRhgwZgmHDhmH16tVwcnLCy5cvcfnyZTRv3hw9e/bE5MmT0b17dzRq1AhZWVkIDg7mZnGamZmBx+Ph9OnT6NGjB4RCYaUz28rrl7t9+zbk5OTQtGnd3Hi4U6dOWLVqFXbv3g0XFxfs3bsXUVFRcHJy+qB2f/vtNyxYsAD79++Hubk5twalqqoqVFVVwePxMHnyZPz666+wsbGBhYUF5s+fD2NjY+5mTykpKXBzc4OZmRn8/f3x8uVLrv3ymXkeHh5wdnbGiBEjsHbtWkgkEowfPx5dunThZtOOHTsWGzZswMyZMzFixAgEBQXh0KFD3JqjampqFfKroqICHR0dqfK0tDSkpaUhPj4ewJulLtTU1GBqasqtKbxhwwa4urpCVVUVgYGBmDFjBlasWFHtOsPloqKi0KlTJ3h6emLq1KlczuTl5aGn92ZZwf3798PHxwfr1q1DmzZtuDpCoRAaGhoy9cXOzg7W1tb48ccf4e/vDx0dHRw/fhyBgYE4ffq0zLnft28fFBUV0axZMwgEAty+fRtz5szBoEGDahzcV1JSqhBneY7eLp8xYwYGDRqEb775Bu7u7jh//jxOnTqFkJAQAG++eNm/fz969OgBHR0d3L9/H1OmTME333zDzWqVJa9eXl4YPXo0Nm/ezC1rMHnyZLRu3Zpby7Wm9/T7KCoqwowZM9C/f39YWFjg+fPnCA8PR79+/QC8Wde2bdu2mDBhAkaNGsXdaDAwMBAbNmyQ6br0888/o127dvD390fv3r1x4cIFmZY0SE5OxuvXr5GcnAyxWMwNeltbW0NVVRVdu3ZF48aNMXToUKxcuRJpaWmYN28exo8fD4FAAODjnXv/ecTUKCcnhwBQTk5OfYdCYomYpodMpzV/+NK9B5dJIpF8cJvFxWn0V/Qp+u7aP7QwyI92rBlMNxe50MnFfWjf2kv0fE04HV++l06s3keZMancfqUlZXTzaDz9vfgqbfpxLh3/fT8VF5W8VwyxMaF00rsj/dO/NY3e3Yf2Ru8lkVj0wX17X2KxmFJTU0ksFle6XSKR0PPn+ynsVi8Ku9WL/rn/OxWVvP7EUX7Zasox8+FYjusey3HdYzmueyzHnwbLc937nHJcV58fioqKKDo6moqKij5qu59CbGwstW3bloRCIQGgxMREIiIKCQmhVq1aEZ/PJ0NDQ5o1axaJRKJq9ysuLiZfX1/S0NAgTU1N+umnn2j27Nnk4ODA7efj40O9e/euNqaxY8eSjo4OASA/Pz8iIiotLaUFCxaQubk5KSoqkpGREfXp04fu379PREQTJkwgKysrEggEpKenR0OHDqVXr15xbS5evJgMDQ2Jx+ORj4+PTLkJCAggDQ2NGut17NiRAgICqtweHBxMACgrK6vCtgULFpCBgQFpaGjQlClTaMKECdSxY0eptidNmiS1T+/evavtg5mZGQGo8CjPJdGbz03z588nAwMDEggE1LlzZ4qNjeW2BwQEVNrGu0MVKSkp1LdvX1JVVSUDAwPy9fWlzMzMCv13dHQkPp9PlpaW1eaqqj77+flVGsvbbQ0dOpS0tbWJz+dT8+bNaffu3dUeR5b2zczMpOKqrE51r0VlfYmLi6O+ffuSvr4+KSsrV4hVltwfOHCAnJ2dSVVVlVRUVKhx48a0bNmy974GVXVebt++naytrUlJSYkcHBzo+PHj3Lbk5GT65ptvSFtbmwQCAVlbW9OMGTOkrq+y5JWIaP369dS4cWMSCoVkZGREQ4YMoefPn3PbZXlPV+bta9q7SkpK6PvvvycTExPi8/lkbGxMEyZMkMrhrVu3qEuXLlyemzdvTkuXLuW213RdKs9hw4YNSSgUkpeXF/n7+9d4XfHx8am0v8HBwVydpKQk6t69OwmFQtLV1aVp06ZJXaOJPs659zmoz7+xPKJ3Fp9hKsjNzYWGhgZycnLq5G6atfE09yl+PTsD3Q4lQh48RI/4Bj1a/wAHPYdazVqtTHZpKfJz7yH/5XkkX7+F7a864T5Zw5lXAndKA5/4aK/aDHqOplB1NQZP8c3aRdcPXcL9S+cgr6gO02a90H6APdR1hbU+fn56Ck5d3YbjwkcAgEZajTDJeVK93CxMIpFwU/er+2nHq8wQnI4/hSMlrWGpmAM/Oydoa7X6hJF+uWTNMfP+WI7rHstx3WM5rnssx58Gy3Pd+5xyXFefH4qLi5GYmAgLCwt2Y5X/IDc3N/j6+sLX17e+Q2EY5i08Hg+JiYkwNzev71CYD1Cff2PZvwy/MGbqZvi17SLwbRvjZQMVROIZlt9ajnk35uHO09AKC73Xhiafj4a6rWFnvwBuPjvRrrM1+CrAI/AQLXkFLblsyItykXfvGV4fjEFpWj54PB46DOoCt6He0Ld0R36WGJd2RuNZ9OtaH1/VoAG8ByzEtBbToKygjJTkhzg9wxv3ooPeu091TVfHDTYW4yBUUIQxPUN8/K9IeLIGZWV59R0awzAMwzAMwzAMwzAM85ljg7NfID1TW7Sa9Bv6/HoAPSx6gC/HR+KrOMTOnYb9c/vjQeKH3aUUAPh8XfzcuhfOjOyEIY3l4UXXoSs6gfOSMESV5OHx8wQc3bEfCYH3QRJCk29aocdPrtAzU0NZqQQh+0JwafsZiMuqXwy/Mq2NWmNFhxXocoegmZKD8A2LcPzxsQ8aeK5L7fStsM7JEwMaWoIHOWRmhiDk3hSEJZ+BRFJa3+ExDMMwDMMwDMMwn8DYsWO59UnffYwdO7a+w/voquqrqqoqrl27Vt/hMcwXg90Q7AumraYHnyY++M76O1wO3AaFoiPIT07F8kh/NM1wwmC7wTDXMP+gYzRUVcW0Xt8hTqMED29dxF5qhmIU4wdeGlTKcnE/7Dr4z1Og960zlPQM0NHbFnfOx+DW8X+Rm1GGglxC11FdIVTj1+q4BioG6DN7G4I3zsFN29cojD2A5/kp+LH5j1CU//C7in5sRkIVwHQ49LVdkZi0EYdyTBGblI8eGasxyPIbaGm5fvCyEwzDMAzDMAzD/Hf5+vrC0dGxvsNgqrF48WJMnz690m31vURiXSi/gVRlGjRo8OkCqWd+fn4y3RCOYarC1pyVwee05ixQ9XpamYkxuPzwJE7wIlFGZeCBB68cC3T9diL0NIw/+LjpOUVYcT4W91OzICnJwRD5B3CRmEMoUUIGTxVZTfPRun1TaKvb4daJy4i6cgequh0hVOWj7XdW0Dd7v9xdTLqIgKgASCCBc7EhxnSbDy3Vul2H9kPWLBOJxVgfF4rrmekYpXgcenK5EArNYKDfC7q630BOrnYD1V+rz2lduK8Vy3HdYzmueyzHdY/l+NNgea57n1OO2ZqzDMMwDPNlYWvOMh+FjoUdBn47E6vdVsPV2BUGKYVQ+ecyAn8ehKPRhyASiz6ofQMNIVb2b45BzqZwV3iC5iVXkCB4gHRNHsRiPorvinF75xk8jJgLq/by6PfLj9AyUEFxQRlC9sXg3+O3IZHU/ruAruZd8UubX9DwtRxsDvyL03OGIDb1wQf1pS4pystjmn17/NmyKxwb9oCcnBKKip4iIP4KZv+7FVceb0du7n0QSeo7VIZhGIZhGIZhGIZhGKYefRWDs1evXoWXlxeMjY3B4/Fw/Phxqe1EhAULFsDIyAhCoRAeHh54/Phx/QT7CRiqGGKS8yRMcJwARR0dPDMR4OCTI5gaMhXhaeEftHarorwcxnxjhQHORuDJySOyTB/r5RogxYaPl8jAsxwe8i9bIeXmSQQkbICy22OYNVNDUU4cIs7sx5EVe1GQXVLr4zbTa4bJ9mMh4CsjV74EiyOW42LSxc92HVoA0FNSQ4MG3nB0+AuGDXxxh5rhUZk+UjLDERM7H/ciRyD6yWa8eHWD3UCMYRiGYRiGYRiGYRjmP+irGJwtKCiAg4MDNm7cWOn2lStXYv369diyZQvCwsKgoqICT09PFBcXf+JIPy2bNl3RbeNxtB8xF1pKWsgoysCGqyuwb/UopLxM+KC27d29YfbDH3hl3An5JWLsS+dBr0VbWOhZooGCOYSP3KFx3xl/PC1FodFS6Fg8AY8nQWEODxe3P0RydGatj2nSqiO+WRkA0cAeKIMY26O2Y+PdDSgu+7xfRwUFNZga94G/cy8MNLFDK/2mUJBXhUiUhUvpSfgpOhmrbv2O6EezkJLyN/LyY0BU+xupMQzDMAzDMAzDMAzDMF+Wr+KGYN27d0f37t0r3UZEWLt2LebNm4fevXsDAHbv3g0DAwMcP34c33///acM9ZOTFwjQztIdzqZtcezxMbzcuQOqcc9w6tloqI0dib42fSFUEL5X2/omjbBqgATrLsfhemw68u/vhkrzrtDSbQy5f1PhnJ0HtfAMKDdVg0qLCAgMhEh7KkBxfgH+Pf4EaQlZcPa0gAJfXuZjqjU0x6QGM2D15DT2P9qPnFOnsO9ECLpO8oeJtsV79eNTMREqYaiFAwAHSCQ/IjfvPoKevgAvl6DCK0B+fizy82OQlHIYF8Tt0FRNFR30zKGt6QSBQL++w2cYhmEYhmEYhmEYhmE+sq9icLY6iYmJSEtLg4eHB1emoaGBNm3aIDQ0tNLB2ZKSEpSU/O+n97m5uQDe3GRAIqn/dUIlEgmIqFaxCOQE+N72ezzvb4yogLWIdABex5/ElWdXMMR+CNobtwePx6t1LApywJTONnAsugWNhzEovfsEu5waYHi/Rnhy/BryswqRdN8ZLa1bo6jheRzXKoV5QhqaJMnj7vmziA9viC5j+kPHWK1Wx+1p0ROWZdpI3DULZWXZ2HBoGr79dgraGberdR8q8z45rh15qKs5YWZTJ6SXiCBX1gooeoDcnLu4m52Gu6KGiM8qhFnBJjzjAQKBIfKVHGCsbgl9dVsoKZmAx/uyJ77XfY4ZluO6x3Jc91iO6x7L8afB8lz3Pqccfw4xMAzDMAzzZfjqB2fT0tIAAAYGBlLlBgYG3LZ3LV++HIsWLapQ/vLly89iKQSJRIKcnBwQUa3vRMs3sYPT/M3gZz/EP0n/IKMgA2f2L0V8vjqaDpgAM32794qpWRsPPCt+hkPP9RH3KBfPcmPg42aF9CtZsMzTheC5FgwyG8HMIgfZNknQlruBZ6kCZKa8xNmtOrDv0AgmzbRqNUCso2EFhXHzcPXfPXhsUIQ14WsQZRyF3qa9IfeBA5cfkuPa4gEg8AA0h5pac9gKRPDMeQGe6BkUYI6S4gSIyp7hz2wnvErLgrf8r7BSyIGSkhXk+ZZQUjSGksAYiooG4PG+nFP6U+b4v4rluO6xHNc9luO6x3L8abA8173PKcd5eex+Ap8TNzc3ODo6Yu3atfUdymdl586d2LlzJ0JCQuo7FIZh3uLr6wtzc3MsXLiwvkORwuPxcOzYMXz33Xf1HcpX58sZyfmE5syZg6lTp3LPc3NzYWJiAj09Pairq9djZG+Ii0UAAH19/ff+h6eBgQE6WHfAuccnUXZ4LRSKsnFG9TcYe/bGINtB0BBo1LpN/YFzIE58jZUXYhGVUYyDj4DpPv2h8LIYeZefQbGgFGNiylBs7QRtdyWoaFxE+iNjvCjgI+vKE1g+U4B7PxeoqMs+i1ZfvyusvvGAMPYATiWcwrUXQaDEeAztsxAqiiq17kM5iUQCHo8HPT29T/6Pe30AzRo2ANAKQF+UlRUgOz8WKom5yC0phglfBHmJCKLSGNwslOBSmRpayJ+GJz8SSkoNoCQ0hZhvDl3lBlBWNoVAYPhZzrKtzxz/V7Ac1z2W47rHclz3WI4/DZbnuvc55VhJSalej8/Uj7oYuDA3N8fkyZMxefJkmeoTEXr06IHz589/cYMokZGRWLFiBa5fv45Xr17B3NwcY8eOxaRJk6TqhYSEYOrUqXj48CFMTEwwb948+Pr6ctuXL1+Oo0ePIiYmBkKhEK6urvjtt99ga2sr1U5oaCjmzp2LsLAwyMvLw9HRERcuXIBQ+GbZv9evX2PixIk4deoU5OTk0K9fP6xbtw6qqqoVYo+Pj4eTkxPk5eWRnZ3NlT98+BALFixAREQEnj59ijVr1lR4LfPy8jB//nwcO3YMGRkZcHJywrp169CqVasacyYSiTBv3jycPXsWT548gYaGBjw8PLBixQoYGxsDAJKSkrBkyRIEBQUhLS0NxsbG+OGHHzB37lzw+XyZ+wIAa9euxebNm5GcnAxdXV30798fy5cv5655suT+xx9/xKVLl/DixQuoqqpydezsajdRLDMzEw4ODkhJSUFWVhY0NTW5bSUlJVi8eDH27t2LtLQ0GBkZYcGCBRgxYgSAN19MDB8+XKo9gUDATcaTJa8AEBcXhxkzZuDGjRsoLS1F8+bNsWTJEri7uwOQ/T39tbh69SpWrVqFiIgIpKamVnoNIiL4+flh27ZtyM7ORrt27bB582bY2NhwdT7Gufel+eoHZw0NDQEA6enpMDIy4srT09Ph6OhY6T4CgQACgaBCuZycXL3/Q48khMd/xyKPsqD5nSqUdd9/sFggJ8B3jQcg/RdzhB3djMd2+Yh9HoywtDD0t+wDT+seUJCr3VukrZUuFvZSgP/JcLSO24RzmU3RfdhM6AyxQ1ZwEiLvRqIwshgtMpqgQ8+NuOl4A1dCxbB4pID02GfYv+AaWvazQ3NXLygqasp0TDnI4YfGP8BC3Rx31y6CccJT/JX2IwaOWoUGqg3eIzNv8Hi8z+I15/PVoK/dEpu0gfwyMVTkPVFY+BT5+Y9wNa0IlK8Evpw8CGIUFScjv+g5fituCEVeAn4SrIO6nBhKQhOUCSyhqtQAOirGEAgMIRAYQF7+/dYb/lg+lxx/zViO6x7Lcd1jOa57LMefBstz3ftcclzfx2feKC0trXTw6Wu2du3a91quTlZ1mdOIiAjo6+tj7969MDExwc2bNzFmzBjIy8tjwoQJAN4sW9izZ0+MHTsW+/btw+XLlzFq1CgYGRnB09MTAHDlyhWMHz8erVq1QllZGX755Rd07doV0dHRUFF5M4EnNDQU3bp1w5w5c/DHH39AQUEBkZGRUufukCFDkJqaisDAQIhEIgwfPhxjxozB/v37peIWiUTw9vZGhw4dcPPmTalthYWFsLS0xIABAzBlypRK+z1q1ChERUVhz549MDY2xt69e+Hh4YHo6Gg0aFD959nCwkLcuXMH8+fPh4ODA7KysjBp0iT06tULt2/fBgDExMRAIpFg69atsLa2RlRUFEaPHo2CggL4+/vL3Jf9+/dj9uzZ2LFjB1xdXREXFwdfX1/weDz8/vvvMue+RYsWGDJkCExNTfH69WssXLgQXbt2RWJiIuTlZb8fzciRI9G8eXOkpKRU2DZw4ECkp6dj+/btsLa2RmpqaoXlZtTV1REbG8s9f/u8kSWvAPDtt9/CxsYGQUFBEAqFWLt2Lb799lskJCTA0NBQpvf016SgoAAODg4YMWIE+vbtW2mdlStXYv369di1axcsLCwwf/58eHp6Ijo6mhvk/xjn3heHvjIA6NixY9xziURChoaG5O/vz5Xl5OSQQCCgv//+W6Y2c3JyCADl5OR87HBrLSs5hy7Pv0R/zl9DAX4b6MHp+yQpk3yUtmMyY2jW1Vk08OQA2vpTB9ox9zu6l3DjvdpKirhAt5d1oUvL+tDc/deooEREpaWldP1kMP29Yjs9W3eL0jfepbzwVIrJzqHjEZdoy4TJtG74GNo0fgGt2hRAh+4EUFZerMzHlEgkFLd7M50e0J4mbvUin3M+FJEW8V7xi8ViSk1NJbFY/F77fypiiYRSi0vpZXEpFRenU1ZWOEUmH6d+oYE04MYxuhXen8Ju9aKwW71o8Y1F9O2VA7TyxlyuLDzCh/be9adLMZsp+dk+evnyMuXmPqSSklckkXyc91WVsX8hOf6SsRzXPZbjusdyXPdYjj8Nlue69znluK4+PxQVFVF0dDQVFRVV2FZaWkqlpaVS/4YrKyuj0tJSKisrk7muSCSSqW5tFRcX08SJE0lPT48EAgG1a9eObt26RURvXrsGDRrQpk2bpPa5c+cO8Xg8SkpKIiKirKwsGjlyJOnq6pKamhq5u7vTvXv3uPp+fn7k4OBA27ZtI3Nzc+LxeERE1LFjR5o0aRJXb/fu3dSiRQtSVVUlAwMD8vb2pvT0dG57cHAwAaDTp09Ts2bNSCAQUJs2bejBgwdV9s/MzIwAcA8zMzNu2/Hjx8nJyYkEAgFZWFjQwoULuTxLJBLy8/MjExMT4vP5ZGRkRBMnTuTifrvNmj6+3717lxo0aECpqakVPhdXJiAggDp27FhtHTMzM1q8eDENHTqU1NTUyMfHh8tPVlaW1LEBUGJiIte2hoYGnT9/nuzs7EhFRYU8PT3pxYsX1R7vXePGjSN3d3fu+cyZM6lJkyZSdQYNGkSenp5VtpGRkUEA6MqVK1xZmzZtaN68eVXuEx0dTQAoPDycKzt37hzxeDxKSUmRqjtz5kz64YcfuD5XxczMjNasWSNVVlhYSPLy8nT69GmpcmdnZ5o7d26VbVXn1q1bBICePn1aZZ2VK1eShYVFhfLq+jJ+/Hjq1KmTVNnUqVOpXbt2VR6nsty/KzIykgBQfHx8lXXetWnTJurYsSNdvny5wnvx3LlzpKGhQZmZmVXuX9NrVZl38/ry5UsCQFevXuXq5ObmEgAKDAyssp1339OV8fHxIT8/vyq3l5SU0Pjx48nQ0JAEAgGZmprSsmXLuO01XSuJqr8uERHFxcVRhw4dSCAQkL29PV28eFGm60q5yuqWj8+tWrWKK8vOzpYan6uLc09W1f2NrWtfxVe6+fn5uHfvHu7duwfgzbdp9+7dQ3JyMng8HiZPnoxff/0VJ0+exIMHDzBs2DAYGxt/UT/xKFeqyUeiRS6UUAgVsQR5/77CldVhiIx4ASL6oLZttW2xrP0y/KT9HYwzyqAem4q1t1ZjVfgqpBek16otM+euMOo+HUc0RyLyFbDw5EOUkRzaebmh95hBULXQBokJBaGpwIlo9DB3Rb+ZU6FnZgJF9aYofWaER8cNEXQ2AA8fzsCrzBBIJKXVHpPH48Fm6Fi4+O+AVlMnFJUVYWX4ShyPP/7BuflcyfF4MBQoQlegCIFAH5qaLdHcpDf+bt0Z61v0RMsWB9G82WbYWP8CRXUX8BW1oSfUhIL8m58DvBKJcCC3ITakq+PFi4N4krgOj2LmYGfEr1jx7684e28e4h7/iqSnW/Ei9R+8ygxBXt5DlJSkQyIpq+feMwzDMAzDMOUOHz6Mw4cPS93Y+NGjRzh8+LDUTC8AOHr0KA4fPoyCggKu7PHjxzh8+DDCwsKk6p48eRKHDx9GTk4OV5aYmFjr+GbOnIkjR45g165duHPnDqytreHp6YnXr19DTk4O3t7eFWZF7du3D+3atYOZmRkAYMCAAcjIyMC5c+cQEREBZ2dndO7cGa9fv+b2iY+Px5EjR3D06FHu8+G7RCIRlixZgsjISBw/fhxJSUlSP4svN2PGDKxevRrh4eHQ09ODl5cXRCJRpW2Gh4cDAAICApCamso9v3btGoYNG4ZJkyYhOjoaW7duxc6dO7F06VIAwJEjR7BmzRps3boVjx8/xvHjx9GsWTMAb16nhg0bYvHixUhNTUVqamqV+S0sLMTgwYOxceNG7tejH4u/vz8cHBxw9+5dzJ8/X+b9CgsL4e/vjz179uDq1atITk7G9OnTa3XsnJwcaGtrc89DQ0OlbvYNAJ6enggNDa22DQBcOxkZGQgLC4O+vj5cXV1hYGCAjh074vr161LH0dTURMuWLbkyDw8PyMnJSZ0jQUFBOHz4MDZu3FirfpUrKyuDWCyusBSKUCiUiqc2cnJywOPxpH7mX1mdt/MK1NwXV1dXRERE4NatWwCAJ0+e4OzZs+jRo0e1xwFQ4VjlCgoKEBAQAAsLC5iYmFTXLU50dDQWL16M3bt3V/orhZMnT6Jly5ZYuXIlGjRogEaNGmH69OkoKiqSqpefnw8zMzOYmJigd+/eePjwYbXHfTevOjo6sLW1xe7du1FQUICysjJs3boV+vr6aNGiRbXtVJUPWa1fvx4nT57EoUOHEBsbi3379sHc3JzbXtO1sqbrkkQiQd++fcHn8xEWFoYtW7Zg1qxZHxQz8OZvR1pamtQ5rKGhgTZt2nDn8Kc69z43X8WyBrdv3+bW9ADArRfr4+ODnTt3YubMmSgoKMCYMWOQnZ2N9u3b4/z581/kWlD6akoYPrQn4q4W40VMEQrSFSDMEyHveDwOBQahYWdHtG3RBPJy7/dTFjmeHNzaDUa2gROCbh9Gseoj3E6/jXsv76GPljt6thoCoYJsP4U3duyKqcb5mHf8AR6l5mHFiXDM+a4VhFoqUPrWEsUxr5F4+SHCnj1EzF8J6NS5E76fPxfPnuXiwvGHKHqVh4zr6sh9UASLb3YgSfMi7PWc4GjcCXy+TpXH1Ta1wbyG87AzaieuxV5A+po12PrdQwzvNB0C+YrLVXyNFOXeDNoCgJKSMZSUjDFbCygSS8BDZyjJy6GsLB+JualwSs2CRJwPA3VPFJekoaQkDTGlpngsNoYmbkFX9AAA8FqiioDSrtDlPYCP4BIAHviKWnglZw45RW00EKpBQ0kbfL4u+HxdCAR6UFDQ+CzXu2UYhmEYhmE+nYKCAmzevBk7d+5E9+7dAQDbtm1DYGAgtm/fjhkzZmDIkCFYvXo1kpOTYWpqColEggMHDmDevHkAgOvXr+PWrVvIyMjglqDz9/fH8ePH8c8//2DMmDEA3vzsfvfu3dDT06synvJ1JwHA0tIS69evR6tWrZCfny+1pqGfnx+6dOkCANi1axcaNmyIY8eOYeDAgRXaLD+epqam1ODookWLMHv2bPj4+HDHW7JkCWbOnAk/Pz8kJyfD0NAQHh4eUFRUhKmpKVq3bg3gzYCWvLw81NTUahxwnTJlClxdXdG7d+9q672PTp06Ydq0adzzZ8+eybSfSCTCli1bYGVlBQCYMGECFi9eLPNxb968iYMHD+LMmTNcWVpaWqU3+87NzUVRURG3Xmw5iUSCyZMno127dmjatCmAN4OKALBw4UL4+/vD0dERu3fvRufOnREVFQUbGxukpaVBX19fqi0FBQVoa2tzNxbPzMyEr68v9u7d+973plFTU4OLiwuWLFkCe3t7GBgY4O+//0ZoaCisra1r3V5xcTFmzZoFb2/vKmOKj4/HH3/8IbWkgSx9GTx4MF69eoX27duDiFBWVoaxY8fil19+qbR+Zbkvt2nTJm6cxtbWFoGBgTItl1FSUgJvb2+sWrUKpqam3Gv5tidPnuD69etQUlLCsWPH8OrVK4wbNw6ZmZkICAgAANja2mLHjh1o3rw5cnJy4O/vD1dXVzx8+BANGzas0GZleeXxeLh06RK+++47qKmpQU5ODvr6+jh//jy0tLQqjb+y9/T7SE5Oho2NDdq3bw8ej8d9gQXIdq2s6bp06dIlxMTE4MKFC9wau8uWLeOusFW31QABAABJREFU3++r/Nyp7Bwu3/apzr3PzVcxOOvm5lbtzEgej4fFixfX6g/BZ01OAZqN3dHITR+Zr4sQdSoeeYnxyCtMQ+rJS9h0MwWWbs3g0cQAAgXZ12x5m6a1PfpaL0CrvGfY9XAXkhLuQG7HNuyzOArbcTPQ3txNprWMrPVVsbh3U2w4fAFuj/fg+KFeGOg9AnJyPAjtdSDkNQD/fDxURUIU3kyDKDEPxh5mGDnRBfeDonHz0AXkF5TicWAHPDLTx0nrEgzLmIUmOrYw0O8JVVX7SuNQlFPE6Oaj0fRiAjJSnyHz8Hks4OdgRuuZ0BXqvldOvgZC+f8NlCooqMJG2waLuS/tOnHb+r7ORlxeJloLG0EfGSgtfYns/CKUvtZDMRTA4ymCSIRS0WucLW2Gx2J99FC8hRYK8QCAXFJGsMgBOnIF6KycBkW+NviKOuAp6kKoqAm+QBsK8looLSWIxWqQk3v/m7cxDMMwDMMwb2ZKAW8+xJazt7eHra1thdll5WsBvl3XxsYGVlZWFf5t3atXrwp1LSwsahVbQkICRCIR2rVrx5UpKiqidevWePToEQDA0dER9vb23LqWV65cQUZGBtevyMhI5OfnQ0dHepJGUVEREhISuOdmZmbVDswCb9Y2XbhwISIjI5GVlcWtRZmcnIzGjRtz9VxcXLj/19bWhq2tLRevrCIjI3Hjxg1uRhoAiMViFBcXo7CwEAMGDMDatWthaWmJbt26oUePHvDy8pLKd01OnjyJoKAg3L17t1axyertGWy1oayszA3MAoCRkREyMjJk2jcqKgq9e/eGn58funbt+l7HB4Dx48cjKipKahZq+ev9448/cjeFcnJywuXLl7Fjxw4sX75cprZHjx6NwYMH45tvvnnv+ABgz549GDFiBBo0aAB5eXk4OzvD29sbERERtWpHJBJh4MCBICJs3ry50jopKSno1q0bBgwYgNGjR9eqLyEhIVi2bBk2bdqENm3aID4+HpMmTcKSJUsqnVFdWe7LDRkyBF26dEFqair8/f0xcOBA3Lhxo8YJdHPmzIG9vT1++OGHKuuU3xxy37590NB4c6Pz33//Hf3798emTZsgFArh4uIidX67urrC3t4eW7duxZIlS6TaqyqvRITx48dDX18f165dg1AoxF9//QUvLy+Eh4dL3fMI+HjvaQDw9fVFly5dYGtri27duuHbb7/l2pTlWlnTdenRo0cwMTGRuvnZ2/mqbx/r3PucfBWDs/9leroqcB/ugAdBOXh9PQm6Ii0YvVJG8okETL+ZDDdHLXR1soSakuJ7tW+iZoK5bebi7ssApPECICouwIaHW3DxRRCGNxkOS03LGttoZKCG6c2LkX69EDnPrmLb1Q4Y09EGPB4PFnZW0GtoAErIR1FoOkSpBUjfHwVhawM0d7ODQKk/Ht2MRbGoMczSi2CYVgKJiREyGofj9evrKBI0RiMjDxjodICcXMVv2lr/OBexECLYNB6peU8x59ocTG0xFfY69u+Vj/+K9tqaaK+tKVWmL5HAtkSEUgnBWtkbZWW5KCl9CdPnWcgvKIWVWitoyxmitOQlnhcR7hdbQEeSi/al91FS+uYfYX+XuiFJrAQv/lE0lXsKUZkI8alqiKZG0OPLobmyCHxFbSjydd78V1Hr/x/a4PO1ICcnrNMbHDAMwzAMw3ypFBUr/ntfXl6+0hvsfIy6dWHIkCHc4Oz+/fvRrVs3boAhPz8fRkZGCAkJqbDf2z/fLr/pUFUKCgrg6ekJT09P7Nu3D3p6ekhOToanpydKS6tfRu195OfnY9GiRZXeHEdJSQkmJiaIjY3FpUuXEBgYiHHjxmHVqlW4cuVKpbmvTFBQEBISEir8jL1fv37o0KFDpTmrjXdzWj7Y//YEqcqWe3g3fh6PJ9Nyc9HR0ejcuTPGjBnDzZwuZ2hoiPR06SX30tPToa6uXmHW7IQJE3D69GlcvXpVajZk+aDZ2wPxwJsvM5KTk7njvDuQXFZWhtevX3OzmIOCgnDy5EluBioRQSKRQEFBAX/++afUDO3qWFlZ4cqVKygoKEBubi6MjIwwaNAgWFrW/Fm7XPkA4tOnTxEUFFTpbMIXL17A3d0drq6u+PPPP6W2ydKX+fPnY+jQoRg1ahQAoFmzZtwvlOfOnSv1JVBVuS+noaEBDQ0N2NjYoG3bttDS0sKxY8fg7e1dbT+DgoLw4MED/PPPP1ycAKCrq4u5c+di0aJFMDIyQoMGDbiBWeDNa0tEeP78OWxsbCq0q6ioCCcnJ8THx8uc16CgIJw+fRpZWVlc+aZNmxAYGIhdu3Zh9uzZXN3q3tPvw9nZGYmJiTh37hwuXbqEgQMHwsPDA//8849M18qarkt1pfzcSU9Plxq8Tk9Ph6OjI1fnU517nxM2OPuVaNbpG9i0bY2ie2lIv/kSivkl0HmRA6Sfx9lrryFuPQI9WjeGpnLt76zJ4/Hg7DUChY6dcelFCASvLyMuKw7zQmbDq9Qe3XtNgaaSZrVtmHYYgjyxAvY+0EXJgwzoqSujr/Obi7SqqirgoAplCy3kXk7G/ceRyLh4Fy1jm6GRVwvYt3dFZko+7oc8R3piFlIjSpHxoCn0mvBw1rwhinKSMUQ4HQ5GLtDX7w5Fxf/FIq+mhsbT/TC38CVW3V6Fp7lPse3wHHRqNQDdnb6HvFzd/MPya8SXk4OZ8H/LQigqakJRUROTbSvW1S0RQSE7F3KSAtirdYCo9DVKRZmQpChBrpQHbRUzKFEZxIXpeEkauFDaFLqiHFiI//fzjiOl7ZEu0UQXxTuwkX8BACjiqSOJZw1dRT5sleW4gVtFvhYUFTXBV9SGgoIGFBU1wOOx15ZhGIZhGOZzYGVlBT6fjxs3bnA/vxWJRAgPD8fkyZO5eoMHD8a8efMQERGBf/75B1u2bOG2OTs7Iy0tDQoKClJrK9ZWTEwMMjMzsWLFCm6Ny3fX5C3377//wtTUFACQlZWFuLg42NtXPclDUVERYrFYqszZ2RmxsbHV/kRdKBTCy8sLXl5eGD9+POzs7PDgwQM4OzuDz+f/H3vnHR5F9f3hd3s2m+ym9wohCYQSikBAlCZBEUVREFRAEERR8ctPsCDFjoqCvQsoIEWKiqg06b0TQg0JgZCebOpm6/39EVhYEiA0QZ33efIke+fOnXtP7szOfObcc2q0eT4vvviiUzA7Q5MmTZgyZQo9e/a86L5XwhnP5OzsbOfy7QvF971c9u/fT+fOnRk4cKCLV98ZkpKSWLp0qUvZ8uXLXbz6hBA888wzLFq0iNWrV9fw9I6KiiIkJIRDhw65lB8+fNi5bDspKQmj0ciOHTuc8UNXrVqFw+GgTZs2QHVszHP/Nz///DPvvPMOGzduJDQ09LLHrtPp0Ol0FBcX8+eff/Luu+/Wab8zAuKRI0f466+/anhMQrXHbKdOnWjZsiXTpk2r4U1fl7FUVlbW2O/Mi5ozIumlbF8bQgiEEC7xsi/EggULXGLHbtu2jcGDB7Nu3Tqnl3b79u2ZP3++S5iSw4cPI5fLaxWKodprdN++fS7xcy9l18rKSoAaNpHL5U7vbLj0nL5S9Ho9ffv2pW/fvjzwwAN0796doqKiOl0rL3VdatiwISdOnCA7O9spom7evPmq+xwdHU1QUBArV650irGlpaVs2bKFJ598Ergx597NgCTO/gPJzyyjymYD1zAcuLm74dYuCn3jYIx/nWDF3jWUWT2ILPNn6fZiFhzYTveEIO5rEYqfx+XHXnUPj+Se8IG0N93NrAOzMC79De2O3/lx22YinnyW5KhklPILTCmZjIROD/GIVxbfrk9n2oYM/HQqbos7G2tEodeguysS09y9WE/acORVUTj7IB7tQvBp7EfH/nHsX7uLTT85sNusVOR3J/akBaNvBbJoOGGfR3b2Agw+txMadDfu7me/CPzd/Xm9/et8t/p9/Ff9gmn1x7zdbzsDO40iXF+3wOMSdSdAo+KeQF/A9QvsPX8HJTY7norOqGXVwfh93TVk5xegk5mob4jHYi3CaimiItePEqsSjSYThaMYu8NEjk3LT5Z4/GQlPGk+K+T+bGlLgTDQWbmbaEUuIMOq8CNbFomfWkOEVn1aTPZxisrVwq4XCoWH5I0rISEhISEhIXEd0el0PPnkk4wePRofHx8iIiJ49913qaysZMiQIc56UVFRtGvXjiFDhmC3250hFaA6IUxSUhK9evXi3XffJTY2llOnTvHbb79x33331XnpfUREBGq1mo8//pjhw4eTkpJSYxnzGV577TV8fX0JDAxk7Nix+Pn5XTSpdFRUFCtXrqR9+/ZoNBq8vb0ZP348d999NxERETzwwAPI5XL27NlDSkoKb7zxBtOnT8dut9OmTRvc3d2ZOXMmWq3WKWJHRUWxdu1aHnroITQaDX5+NUO0BQUF1RqTNiIi4rJDUNSFmJgYwsPDmThxIm+++SaHDx/m/fffv+p2U1JS6Ny5M8nJyYwaNcoZX1KhUDgF4eHDh/PJJ58wZswYBg8ezKpVq5g3b55LDM8RI0Ywe/Zsfv75Zzw9PZ3tGAwGtNrqlXijR49mwoQJNGvWjMTERGbMmMHBgwedHpkNGzake/fuDB06lC+++AKr1crTTz/NQw895Fzqfb5Qv337duRyuUt8VYvFQmpqqvPvrKwsdu/ejYeHh1MY+/PPPxFCEBcXx9GjRxk9ejTx8fHOkAsXw2q18sADD7Bz506WLFmC3W53jtfHxwe1Wk1WVhYdO3YkMjKSyZMnk5+f79z/zLypy1h69uzJBx98QPPmzZ1hDcaNG0fPnj2dIu2lbH/s2DHmzp1Lt27d8Pf35+TJk0yaNAmtVnvRxGJnODdMBkBBQYGz/2e8Qvv378/rr7/OY489xquvvkpBQQGjR49m8ODBTu/q1157jbZt2xITE4PRaOS9997j+PHjzpccdbFrUlIS3t7eDBw4kPHjx6PVavn6669JT0+nR48eQN3m9JXwwQcfEBwcTPPmzZHL5cyfP5+goCC8vLzqdK281HWpa9euxMbGMnDgQN577z1KS0sZO3bsJftVXl7u4n2cnp7O7t27ndd9mUzGc889xxtvvEGDBg2Ijo5m3LhxhISEOK+t1+rc+8chJC5JSUmJAERJScmN7oqoqrCIRR/sEN+N/lbsXLZbOOyOWuvZbDaxfdkmMWvSV+LgWyvEtlfXi69fXyv6TlkrPpw8Ucz+9XeRbTRdVV8OLJwulvbrJEZPvUv0+bWP+N9f/xO783ZfdB+HwyG+XHNUjHn/C/HrpEfE/vSsWvt+/GC6KJx/SOR8tFPkfLRTnPpxn7AWVAohhDDm5YhDW/aLdfMOizlvbhEzXtskvnjqdfHN/00Si74aK57//RPxf+vfE2v3vyEKizYKu93qbNuSmyu2vTxCfPdUZ9H35wdF/yX9xcLDC4X1nDpCCGG320V2draw2+1XZSOJC3MpG+dUWURqWaUos9qEEELYbCaxrzBTvHpgj/jw4GaRnfOLyDwxQ6SlTRVPblkg7l3/i5i7bbTYurWX2LL1HvHjpmHi7jVzxGPrvhRbtt7j/Jmw4XUxct0UMX/zELFl6z1i67beYtOuYWLJnlfFpgPvimPpn4gTJ2eJnNzfRGHhBlFadkCYqrKFzXZ158uNQJrH1x/JxtcfycbXH8nGfw+Sna8/N5ONr9fzg8lkEqmpqcJk+ufdl5hMJvHMM88IPz8/odFoRPv27cXWrVtr1Pvss88EIAYMGFBjW2lpqXjmmWdESEiIUKlUIjw8XDz88MMiMzNTCCHEhAkTRLNmzWrsd/vtt4uRI0c6P8+ePVtERUUJjUYjkpKSxC+//CIAsWvXLiGEEH/99ZcAxK+//ioSEhKEWq0WrVu3Fnv27LnoGH/55RcRExMjlEqliIyMdJb/8ccfol27dkKr1Qq9Xi9at24tvvrqKyGEEIsWLRJt2rQRer1e6HQ60bZtW7FixQrnvps2bRJNmzYVGo1GXM7jOyAWLVp00TrTpk0Tt99++0XrREZGiilTptQoX79+vWjSpIlwc3MTHTp0EPPnzxeASE9Pd7ZtMBhc9lm0aNFFxzBhwgQB1Pg515ZCVP9/EhMThVqtFvXq1RPTpk1z2V5bG0CNem+//bYICwsT7u7uIikpSaxbt85le2FhoejXr5/w8PAQer1ePPbYY6KsrOyC/a9tzOnp6bX25Vy7z507V9SrV0+o1WoRFBQkRowYIYxG4wWPU5f2AfHXX385+3WhOpczFqvVKiZOnCjq168v3NzcRHh4uHjqqadEcXGxs86lbJ+VlSXuvPNOERAQIFQqlQgLCxP9+/cXBw8erNN4z+fMuXpuH4QQ4sCBA6Jr165Cq9WKsLAwMWrUKFFZWenc/txzz4mIiAihVqtFYGCguOuuu8TOnTsvy65CCLFt2zbRrVs34ePjIzw9PUXbtm3F0qVLndvrOqfPZ+DAgWLChAkX3P7VV1+JxMREodPphF6vF126dHHp/6WulUJc/LokhBCHDh0St956q1Cr1SI2Nlb88ccfl7yunPl/nP8zcOBAZx2HwyHGjRsnAgMDhUajEV26dBGHDh1yaedanHtXwo38jpUJUYegL/9xSktLMRgMlJSU3PBMcBVGM3/9sJ6M3b8ilyuo3/ohku5rjN5PW2t9S6UZ8458KvfkU2m2caAiA4NjMwrlfj7Wj6Rlw/o82DKMcB/3K+qPtbiItaU7mXNoLqWWUvxzqmgpi6R7nxcJ9gypdR+H1czeL4dgKclli64T9w18jjDvmscXDoEppYCi9cdZY9yNv8rALe3a4NUmDJmyeulAWVEV+/7aw97l83A4FHiGduekRVDhYaZZ+FaCww6j81Lj59cZf7+uuLmFIGw2CotP8V3GHHbk7gAhSCz3pX+PF4nUV7+hdjgc5OXlERAQUGOZgsS14VraOMNkptBio4HODU+FDJutlL0lBczPLcNXbuIRr2ysViMWazHvF0Ryyqqmn2Y19ajO7nnMHsQsS2f85UaGa84uk1phTaRU6GirPECIvAiFXItD6Uu5IghftRaDxvMcb1xvp1euUumF/EJe5H8j0jy+/kg2vv5INr7+SDb+e5DsfP25mWx8vZ4fqqqqSE9PJzo6+rrGBfyvs3r1ajp16kRxcXGNOK7/JqZPn8706dOvOiathITEtWXQoEFERUUxceLEG92V/xQ38jv2xqsHEpeFzktD54G38KflCCW5gpJ8WPbtfhrdGkJc2yAUCtcbUbW7BnWHMNzifaj84wB5mQVkiwgai1vwtXjw18E8Vh/KIznCwZ1tm1MvwPOy+qPy9qGLd1fahiTx04F5yBZ+h744m29zH6f+/Y/SK6YXWqWrcCxXaWjY93UWLZrL8qp27PllP5MfbFYjHq5MLsO9qT85qhLsf0BJVQWmHfnYj5Wj7xyBOtQDTx832tzbkrB4d3LScrGYw1EcNVJhsVC0WUWBiMUQpiMrsoTKoO/pEmgjLjAJb+/WjPYbzfqs9ayb8wENN+xg/v6hRA4YSq+YXiiQ4pX+k4jSaog6Lx5uSz8vWtZc9cUzgSYKLDaaevZAr3BgtZbgMBYSlVtBoMJEqJcBq9WI1VZMZmF9sq1qEmUngCLsDhNpJhuzLbE1hNw11sZUoKWF4ghBciNKpR6h9MGm9Mdb7Y6b2huV8nRIBbXP6b+9USo9kMmkh3QJCQkJCQkJCQkJCQkJif8ikjj7D8TNw4Okh3uhU3mye0UW2Wkl7F2Vzt6Vy+g86F4CIrxr7KPydyeodyPqLzNScayIKFUMz1vtHECw0FJI85QP2ZMayLyGT3Nfmzjigi5PpNWpdAxIGMDx3h6k/vI9h2I17Du6mDUn19A/vj8dQju4xPXU+Edz5yP/x8qf9pBTUsXrSw7w5n2NcVPVFEXrNYzB08+A7WQFyp1l2I1mihYcRhGnx/f2KBRuSiISmhCR0AQAi8lG+u4s1s0pxVZpwVbZEvt+LaoUOwf0GRhDl2MI/QHfkCjifdsRFXEPaTvmUOylYNvhn9iWvY3hTYfjzpV5E0vc3DTycH1ZoNH40zbQn7aBNesO868gz2KjtaEHBoUVq9VIVXEhATlmQpWVhHjrsFiLsVqLOVoUS45NTbw8CzBis5WSZtYx29KAALmRJzSLne1utDXEJNQ0U6Tjr6hApfJCrvBBpvJCpzagdnrhnvvbG7ncTYqPKyEhISEhISEhIfEfYd26dc4kZbVRXl7+N/bm+jN8+HBmzpxZ67ZHHnnEJUmghMS/CSmsQR24mcIagOuSLZlMxonUIv76fi7lRUdRuwfT7oH+NGwXjFxRuzeevcpG5bZcKvfmY7fb2Fa2n1CRTpbyJN+4DwSZjMRwL/reEk7jUMPl989mY0fBLr5P/Z68yjwStxVhCI6iW58xxPg0cKmbZTTx/NzdJJatJjAihgEPPIBcfmHxyWG2Ub7xFGm7DrG/KoNGhno06tYCTYyXi2glhKDo1EmyjxxD7R7Hvn355J4oRVm8CXPFcTSe0Zj9QjjlLyMmdD9J7mWk+0ey8ORuym0mdGU22oV15tG2j6NRXX7yNIlLczMtPbwSHEIgP2fOrSsqI89i5XZvDwxyE1ZrMZuKjXyTbSFGXcFQ7wys1mKsViPvF8WTa9PQX7WMeorqoPBH7cH8aOlEmLyAxzTLnO1utzXAgpKG8hP4Kq2nvW2rBVu1S3Kzc4VcA3K5+h9v438Cko2vP5KNrz+Sjf8eJDtff24mG0thDST+CezevZvdu3czaNCgG90ViQtgMpnIysq64PYzScX+LeTl5VFaWlrrNr1eT0BAQK3b/m0sXrwYLy8vOnbseKO78p/iRn7HSuJsHbiZxdkzN55ZBw+zasY85KqWqNz88A52p/Xd9TD41x6LFsBWVMX2X9ZzIOsIWpma9oYENvrq+LGgBOGw84BpPqWhHejUqTuNrkCktdqt/LlhBo4Pv8XhsLO8ZwhNW95J/4b98VSf9cxN3/obBSumYkZFetJbPNop8ZJtr/xlGScOptNAHkqMJhRNlB7PjuEoPNUX3Keq3Mofn31KYdYpNIY25AlvzHY7no4C3Own8I4yowjOZb0yn7ifj6E1yTjSsxl9u/2PRr6NLnv8EhfnZnqAup4IITA7BG7nvCxZVlBCrsVKso8OL3kFFmsxa4tKmJFrJ1ZdzuOGo9WhFaxG3i9uTJ5dQ3/Vchchd57ldqLkOfTXrHa2u9cWhQ0FMYpsfJRylCovbDYNes8Q1OravXGVSr0UVuEq+K/M4xuJZOPrj2TjvwfJztefm8nGkjgrISEhISHxz0ISZ29y/gniLIDdZiPrUAk7lx3HYrJjt+QS3y6KxK4JyC7gjVpVVcWuv7bieUKGv9mjuh0fDfvEPnwyv6Ecdz72GEnTqEAeaRtJTIDHZfVV2O1kL1/C5v1/MjeuEABPtScDGg04G+rAbiNj0USmH/djh7oVo+6IpVP8xd+IORwOjh1NI6DQnaqd+QiHwKqw49UuHF3TgAuOVzgcFJ06ic4nkJPpZezaX0Dl3q2UZW9FrtYj82mJ0a7FvzAVTcVelnU6RbkvdA7vxKCmz+CpufH//38LN9MD1M2AEAKTQ2B1ODCozkacWZxbTI7ZSi9/LV6ycqxWI2uKSvg+TxCnLmOw/jBWWwlWaxFTjM3ItbnxiHoF0YpcEHDQ4s9vjg5EKXLprd7gbPegPQwHMqLkBRjUbjU9cJXnC7leKBQ6KazCeUjz+Poj2fj6I9n470Gy8/XnZrKxJM5KSEhISEj8s5DE2Zucf4o4ewZTmYVNPx/g0Lo5CGElqlkPbuufhIf3hSeXsDmo3JNPxbYc8kxFpFal09hHS4aXnS/zo3CcniVdI2Tcd2tzInwvPx7roaJDfL3va3IKjtNhVR6VHVvQ587nCfUIBSH4YfNx5m0/iUoh470Hm1Hfv25CsK3QRMmqTDYe24lFWGkZ1piw7g1R+l3Ya/hcju/bQ8rqdai1EWSWB5JfUIm7owJ5/hosagNF3hqyvbNRumXSPSmWTvXuR69vilx+YS9diUtzMz1A/dOwOQTFNhtCQIBG5SyfdaqQHLOFfoFueMvKMJuLWHoyh0WVeuLVpQzSHzjtkVvMlJKW5NvdeES9slrIBY7Zg/jD2ooIeR53q7c6202zByEDwhSleKo9avfAVRlOh1qoLpfL/xvhQKR5fP2RbHz9kWz89yDZ+fpzM9lYEmclJCQkJCT+WdzI71gpIdi/EK2nmnb31afKWJ+sQ6coM2pZ9u1+mnUOp15z/1o932RKObqWgbjFebPtx1+pqDSTX+pLKxFFswQvfjJVcuDIXtqmfMPyw00paTaMR9pGEqCv+4SN84ljUodJrPtiImXZJyj5bSsvaEdzT4Ne3BdzHw+3iSQtv4JdGQXMXriIZwc8hEGrumS7Sl8t6uQQKuZtx5xvwl5QReHcQ2gTfNHdEoRCd/E2Ips0I7JJM4QQyGQycvMqOLhhLweW25BbjYSKW3HPCsPH2Izje418GrOIZjE/EBMfip//LXh5tUKpvLwEahISV4NSLsNfXXNePxzie84nbzSaMNr5BNIu2hu5XEaEtrtza9KJfLLNZtoFdcZHVobVVkx2UTkV+UqEOgQfT/XpGLnFLC9tTb7dvVrIteRituSRbg/kL1szwuWHuEO1y9nuSYcfchwEKq3o1J7neeOe/q32Pu2ZW/0jk9VMBCghISEhISEhISEhISEh8V9A8pytA/80z9kzCCEw5pawe0UO+ZllAHgFVHFbv7a4XUSwtFgs7Nu0i9BsHbJ8a3WZyoZNfxxb7gz+ssbzq/ZeVAoZ9zUP5YGW4WjVdRdXHBUVnJj7A0sM6azVZAAQ5B7E442HEKWrz8avRuJdeZzt0cMY/tDFE4Sdi8lkIv9kDvojAnNaCQDlsioCWkSgaxmEXFP3PlZVVnBw21bc1G5UaqLZ9cd2RFoBZdY9WBVmHPp45LoQHP4W6oUcIL6BkoCQ5nh7t0GjCazzcf7L3EzeLf9WLtfGpTY7WVUW1HIZ9d3Pvnj5MCOXU2YTI0LU1UKutZg1xZXMKlARrypmgEeKM9nZlLK2FDo8eFS9gihFHgCZdn/W2xoTJs/nNlWKs908hwEVDnxVCjRqg1PEVddIcFb9uzqsws01V6R5fP2RbHz9kWz89yDZ+fpzM9lY8pyVkJCQkJD4ZyF5zkpcF2QyGd5BXnTsb+DI9ly2/rKWI1s2k3sslW7DHiIwqvYkX2q1mpa3t6lOZJRWQsXmU+w+dZScwkKaeA7njsR6ZBRZ2XeqlF+2HeHkzj9oefu9dG0UVCchVa7TETl4OE8JQcucLUxPmY4qNY21vzzLhvt7cE+TRqRvy+VIbjk/bD7OwHZRdRqvVqslokE0NABLVjl5a9JYn7EXr7XHuGVfQ7zahKFt7IdMeembdbWblqC4hs6b+xYt7qY0NZVf5h4mq6CEKg8lcrMF+SkVBVkRbN5aiWdgBprg7fhFQnS9eLy9WqLTxUhegRL/GPRKBXqPmuFARkbVfOHQQWcj3NeMu0JOA497nOUxaafwqDJxS1hbfOVlWC3FnCw2cbLIDQ9VEQad2ink/lR2K4XCkwFiBZH245hMxznp8GOrLY4QeSptlYec7RodOjRyB55KN9QqQ3UYBaUBlcrLGVLhrHeuAaXSgFwufcVJSEhISEhISEhISEhI3NxIT67/AWRyGbGtg6go8mXrrwrsVjVrfzxMw/YhNLo15IKCqkwmwy3GC1WUJyw4hsiQ4eEw4J5SxShvDZmJEaTsnka8cT37lh7muX2PMrRDPZqE1S761tZ+2+C2NPFOYPuiIRRn55OyejkTbgmhTZtBHN0fwNEdJ2kQ6EG7+n6XNWZ1qAf29l6oqnTISxXIzVC2LovK3fno2gThFudzwaRhF0LfqBH9J7xOUe4p1pRu49D3cwg84Uehzg2VuQphjcRc0pKDB9zY7W4kMngOhpBiAiOD8fFrgkGfiEYTLCVUkvhX4KtW4quu+RXySv2QGmXtPaz4+VShVyqI0/dylocePoGsykTLiFb4ykqwWo1kFps5WqRFoSpE7652xsidVdWJIuHJAPUKIm0ZYIJTDh922+sTLEuhufKYs90KocENKxqVrlq0VRpQng6hcFbQ9Ton8ZlBiiEtISEhISEhISEhISEhcUOQxNn/EM27dyGsYQPS91nJ2FtE6vpT5KYXk3RfLO76CwsTCqWCbn16UFxQhFuWnYptOdiLzYjcEzRVJ+Crz2eBvAXpBRW8vGgfHRr4MfjWaPw86pYQSOfmSbuxU0hfPJstDfMorcxkeeU83L27UFrYgI+WHSTioRaEeV9eErLIyEj8+vpht9lRnbRQsTUHa2kV+5ZuI3pnOPp2Yaij9JcllsrlCvyCw7nfL4hjim2km7eSVk+LMGtwiwpA6zBANqgqZGRtM5HjFkqaRzhlHiV4+/5IRKCRgMgQAkMbYTA0Q6XyuqwxSUj8EwnUqAjU1Ayl8mZsOGci65w5D1vrzOi8TPiqlMR79XbW9TqQgc1cRYvIFvjJy7BaSzhhtJBS6IZdVURHD8NpIdfI9LIOFAkPBollhNsyMVEt5KbaIwiS76Wx4rizXYtQosKGUqlzxsB1CrhKw+lkZ/rTIm/1b7ncTXrJIiEhISEhcZMzaNAgjEYjixcvvtFduWZ07NiRQYMGMWjQoBvdFQkJidNkZGQQHR3NzRYxdOLEiSxevJjdu3ff6K5I1AEp4NV/DP/ICFrfXZ+299ZDoZJxbMfvzHvjGzJT8y66n0wmw8ffF/fEAHwHJKBq7sMBywl2leZTaLmHUSFt6F3fD7kMcg5s5PNvvmL+tkwsNked+qUKDSV2xGje6DiJhxs+jEqmpPXeufgXr6B/4fv8uOAnTBb7ZY9Xp9OhN+jRJvjh+2gjcutZSbVksPnkHoxLjlH80xGqjhQjHJd3IZWpVNR75VWSnp/EHYP/j7zbDaSGpLLf/zP096YT39wNrU6gVgnsCl9MZf7kpTfk8Co9G3+ws/SToyz8fBrL537A7k2zyM/dgd1uvuzxSUj805HJZC5CZ4RWw53+XrT28nCp92HDKKY3jaOeVwwGQwv8/DrRPKQj/SKbkBzdlbjYiTROmErzxOlofTpj0CfSMu4V4uJeo369Udh9+7FT0Zl0TWcMhpbo3GNQq3352tKDt6seItPqRlVVFmVl+0ktPMC8rBOsPLGOjOOfcfToJA4ceIFde0ewY+dD7NjZhz17hrI/9XmOHH2TvPxpnMyaSU7OLxQWrqW0dC+VlcexWksQom7XQAkJCQkJiX87HTt25Lnnnvvb9rsU06dPx8vL65q2uXr1amQyGUaj8aL1MjIynPdA5/5s3rz5mvbnevP111/ToUMHvL298fb2pmvXrmzdutWljhCC8ePHExwcjFarpWvXrhw5csS5PSMjgyFDhhAdHY1Wq6V+/fpMmDABi8VSo53JkycTGxuLRqMhNDSUN99806XO6tWradGiBRqNhpiYGKZPn37Bvk+aNAmZTFZjbn311Vd07NgRvV5/wf/lzp07ueOOO/Dy8sLX15dhw4ZRXl5eJ5vt2bOHfv36ER4ejlarpWHDhnz44YcudRYuXMgdd9yBv78/er2epKQk/vzzz8seS05ODo8++ihBQUHodDpatGjBggULXOrcc889RERE4ObmRnBwMI8++iinTp2q9ThHjx7F09Pzss6busyRiRMnEh8fj06nc9bZsmVLre2ZzWYSExORyWQuomNVVRWDBg2iSZMmKJVKevXqddF+bdiwAaVSSWJiYo1tn376KVFRUbi5udGmTZsa/f038eyzz9KyZUs0Gk2ttgDYu3cvHTp0wM3NjfDwcN59990adebPn098fDxubm40adKEpUuXumwfNGhQjetd9+7da7TzX0bynP2PEpHgi0xWzB+f5VFphPXz9hKf1IBmXcJRXCImq1yjQN82lERdG47vPEJQpR+cLOdOGXQINlCSsQ5b1UmWrrWz4uCtDLutHi0jferUL4VcwT3176F5sYFDx18lyfMXbOE6wk8t5K3fG/LaPa2u2GNNppTj1TgIT5MfEapQZKdkWHMqMP5ejtDJ0ScGo03wRe5Wt9NCplaju+UWOgEtAlvww55peH06nyLf7/klqR7d7+pCs8hW5HoGsf5QAYa8cipXL8dcbkWpakt6TjyZOQ4MO/NRyPbipt+JV7Ac/zA/QqJjCI6KQ6GUTlEJiTOozgtFUs9dQz33mh76nzeKotzuQKeQIz99vWjiVoXZvYJQNzVxPr3OtpmSjofdSouodnjLSrHaSjhRVMXWIjWN1MW01aVgs5ZgtRl5v7QdJqHgYfUqQhx5mC155Nq9OGQNIKT8ODHKbGe7QoBMBjLkKJX603Fxz3rmVnvlnhMrV+WFUuklxcmVkJCQkJD4D7FixQoSEhKcn319fa9p+0II7HY7yuv0TLF69Wr69etHu3btcHNz45133qFbt27s37+f0NBQAN59910++ugjZsyYQXR0NOPGjSM5OZnU1FTc3Nw4ePAgDoeDL7/8kpiYGFJSUhg6dCgVFRVMnjzZeayRI0eybNkyJk+eTJMmTSgqKqKoqMi5PT09nR49ejB8+HBmzZrFypUrefzxxwkODiY5Odml39u2bePLL7+kadOmNcZUWVlJ9+7d6d69Oy+99FKN7adOnaJr16707duXTz75hNLSUp577jkGDRrETz/9dEmb7dixg4CAAGbOnEl4eDgbN25k2LBhKBQKnn76aQDWrl3LHXfcwVtvvYWXlxfTpk2jZ8+ebNmyhebNm9d5LAMGDMBoNPLLL7/g5+fH7Nmz6dOnD9u3b3e206lTJ15++WWCg4PJysri+eef54EHHmDjxo0ubVmtVvr160eHDh1qbLsYdZkjsbGxfPLJJ9SrVw+TycSUKVPo1q0bR48exd/f36W9MWPGEBISwp49e1zK7XY7Wq2WZ599toYAfT5Go5EBAwbQpUsXcnNzXbbNnTuXUaNG8cUXX9CmTRumTp1KcnIyhw4dIiAgoM7j/icxePBgtmzZwt69e2tsKy0tpVu3bnTt2pUvvviCffv2MXjwYLy8vBg2bBgAGzdupF+/frz99tvcfffdzJ49m169erFz504aN27sbKt79+5MmzbN+VmjqdtK6/8KMnGDfK8PHDjAnDlzWLduHcePH6eyshJ/f3+aN29OcnIyvXv3vmn+Wdcr2+qVci0z0eakp3FwfQZ5J6rH5RXoTrv7Y/DwrpvthRDYS8xUbMrGdKSYjZUpuDkcNHArYYquBScsp5cqR/swtEM9ggx1y3gnhKDsr1XsPrmFPeb1fJ9zDyaZO/fd4s3EO+5CIb/yJFtWq7X6bY1ZYEopIHPHUbYbDxClDiJeF4lbQx/cGvtSZCu9LBub9qWQNnUSh+2nWNjTF6tGTpugNgxqPAgfNx+qKspJXbuKssJCfNvdy9c7j6MrrCAmbS3lBZmoPcIRnvHYkaMRZtQKC14havzDvQmtX5/gqEjU2ppLw/+p3EwZlf+tSDa+NBaHgxKbHR+VEsVpIfdAuYlNxnIitRq6+FZfG4UQPL4/A7Pdxlv13PGRlWO1GllZWMGsPDnN3Mt4xPMgVqsRm7WED0pvocoh6KdeTZC8GIA8h4EMRyD+shKiFbm19EaGSqk/HQ+3WrRVq7xRqXxOC7jeznKFQvefCa0gzePrj2TjvwfJztefm8nG1+v5obZM0kIIHI4bswJLLtfU6fto0KBBzJgxw6UsPT2dqKgo1qxZw+jRo9mzZw8+Pj4MHDiQN954A6VSecH9wsPDGTZsGKtWrSInJ4eIiAieeuopRo4c6XLMC4U1WL16NZ06dXIpmzBhAhMnTsRsNjN27Fh+/PFHjEYjjRs35p133qFjx44AHD9+nKeffpr169djsViIiorivffeo1GjRkRHR7u0OXDgwFq9N88sg961a9cFvdVq41JhDc6Ma+nSpbzyyivs27ePZcuWMX369Bq2eO6559i9ezerV692tt20aVPc3Nz45ptvUKvVDB8+nIkTJ9a5f3a7HW9vbz755BMGDBiAEIKQkBD+7//+j+effx6AkpISAgMDmT59Og899FCt7bz33nt8/vnnHDtWnVPgwIEDNG3alJSUFOLi4mrd54UXXuC3334jJSXFWfbQQw9hNBr5448/nGXl5eW0aNGCzz77jDfeeIPExESmTp16QVsWFxe7eIp+9dVXjBs3juzsbOd1Zt++fTRt2pQjR44QExNTZ3udYcSIERw4cIBVq1ZdsE5CQgJ9+/Zl/PjxdR6Lh4cHn3/+OY8++qizzNfXl3feeYfHH3+81uP88ssv9OrVC7PZjEp19tnzhRde4NSpU3Tp0oXnnnvukt7hF+L8OVIbZ66fK1asoEuXLs7y33//nVGjRrFgwQISEhIueP5cKqTJQw89RIMGDVAoFDWW/bdp04ZbbrmFTz75BKj+XgkPD+eZZ57hxRdfrLW9uoQ1WL16NWPGjGH//v2oVCoSEhKYPXs2kZGRAPz888+8+uqrpKamEhISwsCBAxk7dqzzxYrRaOT555/n559/xmw206pVK6ZMmUKzZs2cx5g0aRJTpkyhsrKSPn364O/vzx9//FGnsAYXCoHw+eefM3bsWHJyclCrq0NhvvjiiyxevJiDBw8C0LdvXyoqKliyZIlzv7Zt25KYmMgXX3wB/HPCzNT2Hft38be76OzcuZMxY8awfv162rdvT5s2bbjvvvvQarUUFRWRkpLC2LFjeeaZZxgzZgzPPffcTSPS/hsJiq5PUHR9stNK2PrrMQpP5rPovS10HXI/wfW9Lrm/TCZD6eWG4c5oquqrKF9iobzKQWNFEuNtKlIMCr4zluJzYBYfpNWnWdsu9G4Rhpvq4uKqTCZD37kLt9GF+Mo8dv0+j60pgmUrcykueY1RyQOpZ6h3RWN2fskowaNNMOUiE9keNcIhR9gcmPYVYNqXj92goKqVEm0DH2SqS9/ga5s0JnbCW0RWlmESu1mStoQtOVvYn72bh5o+SpeILrS482xW+/Fhek6aLdjWFnJ8n43IxFv4w6ihLMdKWH4ZpqyNlOd7UnCiBambjKjku/DwleEXpiMkJoywmBi0HtorsoGEhEQ1arkcf7Xr+d3QQ0vDWs6tj+IjMNrsBKpVKE978TaQV9DOnEMTf19iAnoC1Q/J8v0ZKOwOWtS/Cx95BVZrMScKK1hboKCxxsgt+qNYrcXYrCVMLWmGxW7jQfUaAmwl1d67FcWccPjhJ08hXF5Qoy9ymQqV2ud0QrNzhduzAm71dgNy+b/npY6EhISERE0cDjM7dva9Icdu2WIuCsWlH2A//PBDDh8+TOPGjXnttdcA8Pf3Jysri7vuuotBgwbx/fffc/DgQYYOHYqbmxsTJ0684H4Oh4OwsDDmz5+Pr6+v0/swODiYPn36XLI/7dq1Y+rUqYwfP55Dhw4B1UIWwNNPP01qaipz5swhJCSERYsW0b17d/bt20eDBg0YMWIEFouFtWvXotPpSE1NxcPDg/DwcBYsWEDv3r05dOgQer0erfbi9+r33HMPVVVVxMbGMmbMGO65556L1q8rL774IpMnT6ZevXp4e3vXeb8ZM2YwatQotmzZwqZNmxg0aBDt27fnjjvuqNP+lZWVWK1WfHyqV02mp6eTk5ND165dnXUMBgNt2rRh06ZNFxRnS0pKnG0A/Prrr9SrV48lS5bQvXt3hBB07dqVd99911lv06ZNLscBSE5OrrHUf8SIEfTo0YOuXbvyxhtv1Glc52I2m1Gr1S4vgM78n9evX39F4uz54z0fh8NBWVlZjTqXGku7du2YO3cuPXr0wMvLi3nz5lFVVeV80XA+RUVFzJo1i3bt2rkIs6tWrWL+/Pns3r2bhQsXXvb4zuX8OXI+FouFr776CoPB4CI85ubmMnToUBYvXoy7++XlojmXadOmcezYMWbOnFnDZhaLhR07drh4TMvlcrp27cqmTZuu+Jg2m41evXoxdOhQfvzxRywWC1u3bnW+2Fq3bh0DBgzgo48+okOHDqSlpTm9UidMmADAgw8+iFar5ffff8dgMPDll1/SpUsXDh8+jI+PD/PmzWPixIl8+umn3Hrrrfzwww989NFH1Kt3ZZrJGTZt2sRtt93mFGah+rx65513KC4uxtvbm02bNjFq1CiX/ZKTk2sIsatXryYgIABvb286d+7MG2+8cc1XC/yT+dvF2d69ezN69Gh++umni8Yq2bRpEx9++CHvv/8+L7/88t/Xwf8owfUNdB3UkJ/emkJ5cT5/fG6h3QP3EtsmqM7eWYGxYdw75EEKjmTjkS7HmlNBkxI7/zMVobMoKTP/zMebA1h1II8hHaJJqudbp7YD3AP45r6nGL3vC4rs+YjtlYxRvkav+K48GPcgGsXVife3tGlNeGQEer0eVbGDyr0FFB7JZs/Jo0QX5BK6LghtvDduCX6o/C5+g6WOiEANPEwC7UPaM3/Ju0Qu2cXyY1PZcMsGhjUdRohHdTZ7Z7b7HveSmHwXAIXGSvaUVdKhxIfUxfuQq1VUBThIy/HCUGnHlLabvDTB0e3ZKJT70Xk78A13Izg6iPDYWDwMfldlCwkJidqRyWTolAp0StcXS008tQT66gjwc/WKmhwXTonNTpBGjVIeAERTT1ZJB0UZMe4a6vlXn/NCCBz7M3A4HLSo3wsvWSlWq5ETheWsLJDTWGOkmccBrNYirFYjn5U2xyoc3K9aj785F7M5l0KHJ9nCB19ZKcGnvXTPRanwqBZqnSEUvKtFXXW1kKs+LegqFB7/GW9cCQkJCYm/F4PBgFqtxt3dnaCgIGf5Z599Rnh4OJ988gkymYz4+HhOnTrFCy+8wPjx4y+4n0Kh4NVXX3V+jo6OZtOmTcybN69O4qxarcZgMCCTyVzazczMZNq0aWRmZhISUn3P/vzzz/PHH38wbdo03nrrLTIzM+nduzdNmjQBcBE/zghOAQEBF33W9fDw4P3336d9+/bI5XIWLFhAr169WLx48TURaF977bU6C6rn0rRpU6cY1KBBAz755BNWrlxZ57ZeeOEFQkJCnCJpTk4OAIGBgS71AgMDndvO5+jRo3z88ccuIQ2OHTvG8ePHmT9/Pt9//z12u53//e9/PPDAA05v05ycnFqPU1paislkQqvVMmfOHHbu3Mm2bdvqNJ7a6Ny5M6NGjeK9995j5MiRVFRUOD0qs7OzL7F3TTZu3MjcuXP57bffLlhn8uTJlJeXu8ztuoxl3rx59O3bF19fX5RKJe7u7ixatKiGgPzCCy/wySefUFlZSdu2bV08IAsLCxk0aBAzZ868JqsAzp8jZ1iyZAkPPfQQlZWVBAcHs3z5cvz8qp9thRAMGjSI4cOH06pVKzIyMq7o2EeOHOHFF19k3bp1tYb6KCgowG631zqPzniJXgmlpaWUlJRw9913U79+fQAaNmzo3P7qq6/y4osvMnDgQKD6mvL6668zZswYJkyYwPr169m6dSt5eXlOx8XJkyezePFifvrpJ4YNG8bUqVMZMmQIQ4YMAeCNN95gxYoVVFVVXXG/ofq8On9FwBn75OTk4O3tfcFz79xzvHv37tx///1ER0eTlpbGyy+/zJ133smmTZtQKK58VfS/ib9dnD18+LDLW5gLkZSURFJSElar9W/olQSAzsuNzoPuYe2sxcg18exZdZLinEpa9YhCeQlP1zMYDAYMrQyIlgLLiTJy1h8jpTQLhfCjrWIYt9m8WVlSxdtLD9IiwounOsUQqL/023a5XM7r98VzeOFsCuVq3j/WiZ+VS9iSvYXHGj9Gi8AWVzxumUxGcHDwaSOAOsyTIxvzMW6vItthJMTiT+XeAir3FqAKdEfb2A+3Bl7ILmGTKEMUg0oak6nKJSu/ks1FBxizdgy9G/SmZ/2eKM+JLalQVp8T3fwMdPMzAME0qFcfa5WJTTItK7PzaU0Junl/Yio1oXH3JLsqkKJCQXFeAWnbclGo03H3suATKiMgwouQ+mF4+8WiUt34UBwSEv8lZDIZ3iol3irXr9jmenea62u+6X+rQRhGm50ArQalvPrtcSQVtJaVEa9zIyagB1B9Y2rdn4HZbqdZvZ4YZKVYrcVkFJn4vVBFgrqQhrr9TiF3WnkzhBDcpdqKjz0TkymTUqGlVLjjJavAQ+Z6syaTKVGpzsbDVSr1KBU6FAodCoU7SqUHCoXHOb91KBQeKBRaZDJpibaEhITEjUIu19Cyxdwbduyr4cCBAyQlJbm8HGzfvj3l5eWcPHmSiIiIC+776aef8t1335GZmYnJZMJisVxWiIDa2LdvH3a7ndjYWJdys9ns9PB69tlnefLJJ1m2bBldu3ald+/etcb7vBh+fn4unma33HILp06d4r333rsm4myrVq2uaL/zxxEcHExe3sUTR59h0qRJzJkzh9WrV1/xcuCsrCy6d+/Ogw8+yNChQ53lDocDs9nM999/7/zffPvtt7Rs2ZJDhw5dMNTBuZw4cYKRI0eyfPnyq1qunJCQ4PQwfumll1AoFDz77LMEBgZedjiVlJQU7r33XiZMmEC3bt1qrTN79mxeffVVfv75Z2fM07qOZdy4cRiNRlasWIGfnx+LFy+mT58+rFu3zvlyAWD06NEMGTKE48eP8+qrrzJgwACWLFmCTCZj6NCh9O/fn9tuu+2yxlYbF5sjnTp1Yvfu3RQUFPD111/Tp08ftmzZQkBAAB9//DFlZWW1xgCuK3a7nf79+/Pqq6/WOL+vNz4+PgwaNIjk5GTuuOMOunbtSp8+fZwaxJ49e9iwYYNLgju73U5VVRWVlZXs2bOH8vLyGl6mJpOJtLQ0oPpaOnz4cJftSUlJ/PXXX9d5dHXjXC/5Jk2a0LRpU+rXr8/q1atdQlf8l/nbxdlLCbNGo9HlLWNdhFyJa0d4owQeejWOY7sL2b3iBJmpRRTnFHPbQ03QedX95ksmk6GJ0OPZPYLAlSeQ51kwOEK4RwjaVdlYayshOHUmb2Z2pvOt7enZLASF/OIeW+5NOhKT1ZldBy3YRQtK87TElK5i4c6x/NWxCwMbD8JPe208Rxs1S8DssFAvuh5edg9M+wupSCtiW/pOwk76E7zWD228L9oEX1T+F15W4TdsGJoGDQhv1ZCqwz+wO38381J/ZGPWBp5oNpwY7wsve3HXG0BvoDtwm48nJqsVU/8nKDiZSdhtnfnf7qO455XS6eA+CtOOIVMGY6YZuUYl6fstqDiMm+cO9IEV+Ia7ERQVgI9/fXS6GJRKz2tiJwkJiatDJpMRqFERqHH9rmtl0NHKoKtRf0L9kGqPXJ0WpbzaoydSVk4LWRmNPBoTG9ALqBZyS1LSsTlsJETfi54SrJYiVhSZ+alYS4KqgH7uu7FajVgtRSw0NUaBgw6OfegthQBUCjVVQo1OZkYju/CLUhlyFAp3FEoPFwFXqdBVlyk8LiDsVou+krArISEhcXXIZLI6hRb4NzFnzhyef/553n//fZKSkvD09OS99967YIb3ulJeXo5CoWDHjh01vLnOhD14/PHHSU5O5rfffmPZsmW8/fbbvP/++zzzzDNXdew2bdqwfPnyq2rjDDqd6z2EXC6vEQ+zNieo85+9ZTIZDofjksebPHkykyZNYsWKFS4C7xmv5Nzc3LPOMKc/ny+knzp1ik6dOtGuXTu++uorl23BwcEolUoXUe2M52FmZiZxcXEEBQXVSO6Um5vrDC+xY8cO8vLyaNHirFOP3W5n7dq1fPLJJ5jN5jp78PXv35/+/fuTm5uLTledB+CDDz64rCXkqampdOnShWHDhvHKK6/UWmfOnDk8/vjjzJ8/38XTtC5jycjI4JNPPiElJcWZdK5Zs2asW7eOTz/91BkLFKpfFvj5+REbG0vDhg0JDw9n8+bNJCUlsWrVKn755RenJ3N1jGsHSqWSr776isGDB9dpvBeaI2fQ6XTExMQQExND27ZtadCgAd9++y0vvfQSq1atYtOmTTXCXbZq1YqHH364Rlzq2igrK2P79u3s2rXLmXjN4XAghECpVLJs2TJuvfVWFApFrfPoXA/7K2HatGk8++yz/PHHH8ydO5dXXnmF5cuX07ZtW8rLy3n11Ve5//77a+zn5uZGeXk5wcHBzvjQ53IxD/1rwYXOqzPbLlbnYjarV68efn5+HD16VBJnT3ND00K/8847REVF0bdvdYykPn36sGDBAoKCgli6dKlLjBGJvw+FUkmDVoF4BbizZvYW0nf+SWHWQbo+1pOgeobLasvHx4c7H7gbq9WKyK6iYks23jll+BmP4mtN5H7LAaauDWbN4Xye6RxDPX+PCzcml+PR7RUSGpajXpKKvawlYYcyCcvbwnrNav6vYB994vrQPar7VSUMg+q4QTExMc6EEpoIPXkpZorXVWGqPEWQxed0bNoCVAHuaBv7omngjVztelyZUon+jjvQAy+2fpH1WevZ9+nbiMrtvJn3Eh0T7qZvXF/clBe/oXZXyHFXaKBRY8IaNcbmEIxrEkO22Uqgr5Vj7mrqt2rLb+Uaso5XUr+gAOuRdVQVe2IqTSDjqBYVNjw8tqHz+w2vYDOB9TwxeNVDp5MEWwmJfwIymYwIbc2XZG28PGjj5XrtFMDzUUEYbXaCPDxQnX755ScrJcxuJM6rMfHBvavrCsFH+45hdVgZEtUH/enQCiuKbCw0utNMU0w/zzTs9gpstjKml8bicFi4U7EJT1kJAge5VhnZFg2+skKC5UcvZ1ROr1yl0hOlwvO0yOt5+nO1mFtRaaW8PAK12oBS6Xk6IZok6kpISEj8k1Cr1djtdpeyhg0bsmDBAoQQTu/ZDRs24OnpSVhY2AX327BhA+3ateOpp55ylp3xILua/jRv3hy73U5eXh4dOnS44L7h4eEMHz6c4cOH89JLL/H111/zzDPPOOMynt9uXdi9e7eLgHkt8ff3d0mUdeZ418IR6t133+XNN9/kzz//rOGxGx0dTVBQECtXrnSKsaWlpWzZsoUnn3zSWS8rK4tOnTrRsmVLpk2bVsMDtX379thsNtLS0pzLwg8fPgzgTKiUlJTE0qVLXfZbvnw5SUlJAHTp0oV9+/a5bH/ssceIj4/nhRdeuKKl1WeWcn/33Xe4ubnVOfzD/v376dy5MwMHDnTxljyXH3/8kcGDBzNnzhx69Ojhsq0uY6msrASoYUuFQnFRwf3MNrO5Osngpk2bXObzzz//zDvvvMPGjRsJDQ2t03gvNkcu1o8zffjoo49c4sOeOnWK5ORk5s6dS5s2berUnl6vr2Gzzz77jFWrVvHTTz8RHR2NWq2mZcuWrFy5kl69ejn7sXLlSqegezU0b96c5s2b89JLL5GUlMTs2bNp27YtLVq04NChQxeMV9yiRQtycnJQKpVERUXVWqdhw4Zs2bLFJcna5s2br7rPSUlJjB07FqvV6rxeLF++nLi4OGc866SkJFauXOkS3/ncc682Tp48SWFh4XW75v0TuaHi7BdffMGsWbOA6n/e8uXL+f3335k3bx6jR49m2bJlN7J7/3n8Izyp39xB8Ukwleawds4hWt4ZRf3mAZfVjkwmq75RiVSjjvDk1PpdVG6ScQoHzVWdebJExgpLGf+bu5t+rSN4sFX4hb1olWpaR/vwUOtw5mzNZGtUEgn1wnFrUUKV8Qjfp37Puqx1DGsyjHpeVxf8+nxCo8NpajfjofPARxOAaX8hVUeL2Zd5gKBsX7zX6XGL80ab4IcqoKY3rUwmI8mtIWHGCE6UHCe13MLS9KVsz9nOkCZDSAxIrHNflHIZsTo3YnVu0P524trdhnA4uL28ir0NTTQuyCLTvheFygNlTH22HjGhK7WhKMilstCLogxvDm9WofXLxS94E4bQE+j0Xujc6+Ouq4/OPQadrr4k2EpI/EORy2Q09qx5Herqq6err2uoEwcwINSfUpudYL2XU8j1cBgxWIoJ925I/dDqJZZCCPJTMrAJQWL8ULyVdmy2cn7PL2Z5bgUtdVba+5Zhs5Vhs5cz8ZQ/NmHncc99+FCA3VbBMYuK/RYfQmR5NFJkYrdXYLdXcMpUiVqWhTtVKGTnePcIsNqsFBaowPnVIDvrmXtGyD0t5p77uXq7/hyhVyfF1ZWQkJC4QURFRbFlyxYyMjLw8PDAx8eHp556iqlTp/LMM8/w9NNPc+jQISZMmMCoUaOcolJt+zVo0IDvv/+eP//8k+joaH744Qe2bdtWIzbipfpTXl7OypUradasGe7u7sTGxvLwww8zYMAA3n//fZo3b05+fj4rV66kadOm9OjRg+eee44777yT2NhYiouL+euvv5xenJGRkchkMpYsWcJdd92FVqt1etyey4wZM1Cr1TRv3hyAhQsX8t133/HNN99cA0vXpHPnzrz33nt8//33JCUlMXPmTFJSUpzHv1Leeecdxo8fz+zZs4mKinLGmPTw8MDDozqW/XPPPccbb7xBgwYNiI6OZty4cYSEhDjFr6ysLDp27EhkZCSTJ08mPz/f2f4Zz7uuXbvSokULBg8ezNSpU3E4HIwYMYI77rjD6U07fPhwPvnkE8aMGcPgwYNZtWoV8+bNc8Zy9fT0pHHjxi791+l0+Pr6upTn5OSQk5PD0aPVL5v37duHp6cnERERzpjCn3zyCe3atcPDw4Ply5czevRoJk2aVCcvxpSUFDp37kxycjKjRo1y2kyhUODv7w9UhzIYOHAgH374IW3atHHW0Wq1GAyGOo0lPj6emJgYnnjiCSZPnoyvry+LFy9m+fLlzpiyW7ZsYdu2bdx66614e3uTlpbGuHHjqF+/vlNYOzc2KsD27duRy+U1jn8hLjVHKioqePPNN7nnnnsIDg6moKCATz/9lKysLB588EGAGuFNzpxT9evXd77EgWpvZIvFQlFREWVlZezevRuAxMTEWvscEBCAm5ubS/moUaMYOHAgrVq1onXr1kydOpWKigoee+yxOo23NtLT0/nqq6+45557CAkJ4dChQxw5csQppI4fP567776biIgIHnjgAeRyOXv27CElJYU33niDrl27kpSURK9evXj33XeJjY3l1KlT/Pbbb9x33320atWKkSNHMmjQIFq1akX79u2ZNWsW+/fvv6Q399GjRykvLycnJweTyeS0WaNGjVCr1c5QEEOGDOGFF14gJSWFDz/8kClTpjjbGDlyJLfffjvvv/8+PXr0YM6cOWzfvt3pAX/GM7h3794EBQWRlpbGmDFjiImJITk5+Yrt+m/jhoqzOTk5hIeHA9UB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CxcuFE2bNhV6vV7ExcV5whcvXix69OghLBaLCAgIEF27dhWffvqpEEKIBQsWiG7duomAgADh6+srLr30UrF06VJP3g0bNoj27dsLk8kkavr5npycLHr37i1CQkKEyWQSTZs2FU8//fRpx9/MmTPF5Zdffso0cXFxYvr06VXC165dK9q1ayfMZrPo1auXmDdvngDEkSNHPGUHBgZ65VmwYEGNfRDC9fxwmd57vSrKUgjX80lMTBRGo1EkJCSImTNnesVXVwZQJd2rr74qGjVqJHx8fET37t3FmjVrvOKzs7PF7bffLvz8/ERAQIC49957RWFhYY3tr67PR44cqbYtFeU+d+5ckZCQIIxGo4iMjBRjxowReXne625N1FQ+IFasWOFpV01pzqQvDodDTJw4UTRp0kSYzWYRExMjHnroIZGbm+tJM2LECBEXFyeMRqMIDw8XV155pfjzzz9P2QdALFiwoFb9rc0Yeffdd0WbNm2Ej4+PCAgIEB07dhQffvjhKT8bKq8Rp6qr8jhy434W7nXEzY4dO8Rll10mTCaTaNiwoXjttddO28/LL7+8xnqEEOLll18WrVq1EhaLRYSEhIjrrrtOHD582BOflpYm7r77bs96m5CQIEaNGuW1Jnz77beeeRQcHCx69+4tfvzxR0/8hg0bRIcOHYTRaBSJiYli/vz51favIjWNtQkTJnjSlJaWioceekgEBwcLHx8fccMNN4i0tDSvco4ePSquuuoqYbFYRFhYmHjyySeFw1Gut3n99dc94zAkJET06dNHLF++/LRyPR31+RkrCVELpy8XmIvNcragoIDAwEDy8/PP+hbG84mqqh4T78rHCv4tbFtyjD2rd+EbFE3/Ea3xCz57R9y1RlU58ce7rNp9nB+LEsmyh9FS0vF04wiaDGuN7GOokPTsZOzMzSXjlcmoViv+D97HPHUzS5OXAtDApwFjEsfQMqTlee9aTRQVFWGz2QgNDUW128l8azqH0tJod/ddmMKbkbJsHydT01CEQqGphIg+zWh/SbcLYhF6LuPYXlrC9j9/oyArg77D70endz270kI7O1ec4Nhu14UoRrOODv1iiW8XWus+2dXyW7wVIXj1cBpdA325IiQA1BLS0uaRnvErQjiQkImIuJaGDe9EdxFaHv8X1oqLHU3GdY8m47pHk/GFoS7lbFNVMu1OVCGIs5R/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dGj/CVFRN6PT+VJamszBQ29oSloNDQ0NDQ0Njf8wjz76KJ9//jlTp05l//79LFy4kK5du573euryd/Xq1avp378/v/32G1u2bKFv374MHjyYbdu2edLMnTuXJ554ggkTJrB161Y6dOjAwIEDPYq91NRUUlNTmTp1Krt372bWrFksXryYkSNHetX11ltvMX78eJ599ln27NnD0qVLGThwoCe+oKCAAQMGEBcXx5YtW3jzzTeZOHEin376aZV2Hz16lKeeeopevXpViSsuLuayyy7j9ddfr7bPxcXFDBgwAEmSWL58OevWrcNutzN48GBU9fTf2/fv34+qqnzyySfs2bOH6dOn8/HHH/O///3Pk2b9+vW0b9+e+fPns3PnTu69917uvvtufv311zPqyxNPPMHixYv55ptv2LdvH4899hhjx45l4cKFVdK+/fbb1d4fcuutt5KWlub1GjhwIJdffjkNGjQ4bX8Bhg4dyrJly/jiiy9ISkriu+++o0WLcld4P/74o1f5u3fvRqfTccsttwBQUlLC1q1beeGFF9i6dSs//vgjSUlJDBkypNr6nnnmGaKjo6uNO928O3LkCNdccw19+/Zl+/btPPbYY9x3333Vbjr8FygpKWHQoEFe468yw4YNY8+ePSxZsoRff/2V1atXc//993viazP37HY7/fv35+jRo/zwww8kJSXx2Wef0bBhwzrt378KUY+MHj1aNGjQQHz88cdix44dYseOHeLjjz8WkZGRYvTo0fXZNC/y8/MFIPLz8+u7KUIIIRRFEWlpaUJRlPpuSp2iqqpY+8M/Yu7kTWLhu9uFrcRRl5UJsXmGECcPir2p+eKad1aJqyd+JWa88Yw4svxLUbA+ReyevEEsfWG1uG36avH+8n+EU1HrsDmusu1Ou/h4+8di6C9DxdBfhooPtn0g7Iq9zuqtiaKiIs94y/7yS5H8wGiR/9tvQgghFKtDFG/NEFlf7RHp724V6e9uFcfe3SB++GaGuGvBMDH0l6Fi2KJh4qs9X4lCW6GnzIthHKuKIg78tU789eNcj8xrIietSCyZsUfMnbxJzJ28SSyZsUfkphfXqp5Mm12M3n1E/JaZe8p6HI5CceLEbPH3ltvFxk1DxMZNQ8TOXWNFdvZaoapnLqeLQcb/dTQZ1z2ajOseTcYXBk3Odc/FJOO6+v1QWloq9u7dK0pL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rPyyfsgSCFVCkk/98V7diiRLEjrwKDsrq6gr/l1xSZMqyEYAdlXFrJPL03qlKssjVVOmO517uKoCCbA7HPgZjSBBoaJglFzPS5a8S5AqKLw99UkuJXqeU0FGwqTTYZJ1yGXzWZTllb0U5lRTVsX3p4qv2hb33zrZUrZxICHVUHaVv73eU56/hrjKSnGhOlBUKwZ92Ua3pKuU1/XQCguL8PcPQJIrllFJHlWU9u40FeKrTYN3WOX+eYo5gzK80lChHHdY5U0SqumLXOF9Tf09XZrKmwtlffPazHClUVWV7OxsQkPDXCdyvMqUK/S0Yhnlz7PmeiqmccWpqg0hVPR6v2radG5U3ry8mLiYviPX1e+HUx65dFhd/+tN5fNbcYLqdF1QqzPULq0kg954+rS6M7PzsdlsPP3008yZM4eCggIuueQSpk+fTpcuXVBVldjYWMaPH8+DDz7oybNt2zY6d+7MkSNHiIuLIy8vj6eeeoqff/4Zm83mKaNDB9clrBMnTuSnn35i7NixTJ48mWPHjqGqKn36eLs1+Prrr3nnnXdISkrC19eXK664grffftujGFi5ciV9+/bl119/5bnnnuPAgQMkJiby+eef07Zt22r7Fx8fz7Fjxzzv4+LiPIqCn3/+mUmTJrF3716io6O55557GD9+PHq9HiEEkyZNYsaMGWRkZBAaGsrNN9/Mu+++S58+fVi1apVXPTX9fL/00kvp378/L7/8cq2fSW3cGvTp04e2bdui1+v55ptvaNeuHTNnzqRx48Zs27aNxMREAPLy8ggODmbFihX06dPHI8OlS5cybtw49u7dS2JiIjNnzqRFixa1buObb77JRx995DlN+9FHHzF+/HjS09M9SuJnn32Wn376if3791dbhqIoBAcH8/7773P33XcDcNttt2EwGPj666+rzZOfn094eDizZ8/m5ptvBlzK41atWrFhwwYuvfRST9qPPvqIuXPn8uKLL3LllVeSm5tLUDWXHFceh26io6MZP368l9XfTTfdhMVi4ZtvvqmdoCqQlZVFgwYNWLVqFb179642zbx587jzzjspLi5GX+H+llP1ZerUqXz00UccOnTIk/69997j9ddf58SJE54wRVHo3bs3I0aMYM2aNeTl5Z3Sovz666+nsLCQZcuWnbZvTqeT+Ph4Jk2axMiRtXPVl5WVRcOGDfniiy+4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KIqUkpLiFHkqgvvR8Xdxd+m5U1foyxuJTpTs4aFSzhUPGUzHzofpuHxgenY+lUnHzvr9UJEnSZeWMWPGUKtWrSgmJobu3LlDgiDQzZs3ycXFhcaNG0cXLlygX375hapWrUqzZ88ustxHH31E7u7utG3bNoqOjqaZM2eSu7s7NWnSRC43YsQI6t+/f6HyHDhwgADQjh076M6dO5SZmUlERMOHD6eQkBDatGkTXb16lQ4fPkzz58+n33//nYikk+S3bdtGV69epWPHjlGbNm1o8ODBRER08+ZN4jiO1qxZQ4mJiZSenl6kTmbOnEmBgYFkdvA3SufOnSkyMrLQ9MJOXN+2bRtxHEfffPMNXbp0iWbNmkXu7u7UuXNnu7onTpxoV65///40YsSIQttbsGABqdVq2rhxI8XHx8sv234vWLCAPD096ddff6XTp09T//79KTQ0VB7DN2/epNq1a1P37t3p5s2bdvVYEQSBmjdvTp06daLjx4/Tv//+S23atKEePXrIea5evUouLi705ptv0oULF+jTTz8lhUJB27ZtK1KfefscHx9PJ06coC+//JIA0L59++jEiRN07949Oc/HH39Mx44do+joaPrkk09Ip9PRRx99VGg7tpw5c4Z8fHzoueees+trYmLud+/vv/+elEolffrpp3Z5ivqdUlBfvv76azp48CBdvnyZvv32W/L29qbJkyfb5enVqxc1a9aMDh8+TPv376c6derQ0KFD5fQ7d+7Q559/ThcuXKATJ07Q66+/Tlqtlg4fPuxQfx3tiyAIVKNGDZo6dWq+Oq5cuULz58+nf//9l65fv04HDhygfv36kbe3N92+fVvO179/f2rYsCEdOHCAzpw5Q3379qUGDRqQ0WgsULbIyEjy8PCwuxYbG0tubm40fvx4io6Opt9//518fX3pvffeK7KfwcHBtHv37kLTi5o34uLiyMfHh55++mk6cuQIXb58mbZt20YjR46U54YZM2ZQlSpVaM2aNXT58mU6duwYrVixgtasWUNERNevXye1Wk1Tpkyhixcv0vfff0/+/v4Fzge2ODLeixsjKSkp5OfnR88//zydPXuW1q9fTy4uLrRy5cp87T3++OM0ZMiQInVZkVTkZywzzjoAM84+etyXjjPvEUVvl14WcnJy6N9//6V//vnHCVKWnMx//6V7a9ZQ5vHjFS2KU8dx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00S3bt3ESy+9JIqKioSiKEIIIQYNGiQmT54cL/fqq6+KXr16iaSkJJGZmSlGjRolKisr4/mLFy8WgPjoo49E165dhclkEn379hUbNmxosX+FhYUCiL8KCwvjee+//77o0aOHMJlMolWrVuK+++6Lx1nTNDFt2jSRn58vjEajyM7OFpMmTYq3+9A6W/rv+3//+1+hqmrC9dbQ0CAURRELFixosc2LFy9OaGdzBg0aJCZMmCAmT54sUlNTxVlnnSV2794tALF27dp4ufr6egGIxYsXJ8Twiy++EL169RIWi0X0799fbN269bDn+6FHH31UtGrVKv7+ueeeE8nJySIUCsXTbr/9dtGhQ4cW64hGo8Jut4t///vf8bTLL79cXHXVVS0e09DQIAwGg5g7d248bcuWLQIQy5cvTyj73HPPiUGDBomFCxcKQNTX1zdb5w+vw4Oys7PFM888k5B28cUXi9GjR7fYvsOpqqoSgFi6dGmLZd5++21hNBoTvu+AmDdvXovH3HbbbaJLly4JaZdffrkYOnRo/H2fPn3EhAkT4u9jsZjIyckRDz/8cMJxa9euFbm5uaK8vPyI5z1UXV2dsFgs4osvvjiq8gfdcsst4vTTT4+/nzVrlnA6nYc9pkuXLmL69OkJaT179hR33XVXQtqx9KWqqkoYDAbx6quvHvbcY8aMEdOmTWsxPxQKiQkTJoisrCxhMplEQUGBeOihh+L5RxorhTj8uCSEENu2bRNnnHGGMJlMolOnTuLzzz8/ps+qubKapomsrCzx2GOPxdMaGhqEyWQSb7zxhhBCiM2bNwtArFy5Ml7m008/FYqiiNLSUiGEEKNGjRJ/+MMfEup+6qmnRF5eXsLPqmN1uJ+xJ9r/xMpZOPAXi8cff5x7772X7t27s27dOj777DMyMzNPdtMkSZIkSZIkSZJ+krlz5zJ37tyEBxtv2bKFuXPnsmrVqoSy7733HnPnzo2vrAPYvn07c+fObfI8jvnz5zN37tyEW6B37959zO277bbbePfdd/n3v//NmjVraNu2LUOHDqWurg5VVRk1ahRz5sxJOOb1119n4MCBFBYWAnDppZdSVVXFp59+yurVq+nZsydnn302dXV18WN27NjBu+++y3vvvce6deuabUskEuGBBx5g/fr1vP/+++zZs4drr722Sblbb72VJ554gpUrV5Kens6IESMSbo0+1MqVK4H/W3l48P2XX37JNddcw+TJk9m8eTMvvPACs2fP5sEHHwTg3XffZcaMGbzwwgts376d999/n65duwIHPqe8vDymT58eX3XXnFAohKIomEymeJrZbEZVVb766qtmjzkW//73vzEajXz99dct3tbdkrvuuosnnniCVatWodfrue66647p+MbGRlJSUuLvly9fzplnnonRaIynDR06lOLiYurr65utw+/3E4lE4vVomsbHH39M+/btGTp0KBkZGfTt2zfhFuzVq1cTiUQYMmRIPK1jx44UFBSwfPnyeNrmzZuZPn06r7766o/e6zoUCjW5pd5isfzoz+7gd/XQuDVXxuFwoNfrE9InTJhAWloaffr04ZVXXkEc8oii5cuXJ8QDDsT+YDzC4TCrV69OKKOqKkOGDEmImd/v58orr+TZZ5895m0mFyxYgKZplJaW0qlTJ/Ly8rjsssvYt29fi8fs2LGDzz77jEGDBiWke71eCgsLyc/P58ILL2TTpk0J+QMGDGD+/PmUlpYihGDx4sVs27aNc88990f35dVXX8VqtfKHP/zhmPr9Q0899RTz58/n7bffpri4mNdff52ioqJ4/pHGyiONS5qmcfHFF2M0GlmxYgXPP/88t99++09qMxz42VFRUZFwjTidTvr27Ru/RpYvX47L5aJ3797xMkOGDEFV1fjPp5a+M/v372+yAvrX4n9mchZg4sSJ7N27l1AoxIoVK+jbt+/JbpIkSZIkSZIkSdJvms/n45///CePPfYY5513Hp07d+all17CYrHw8ssvAwduY/3666/je35qmsabb77J6NGjAfjqq6/47rvvmDt3Lr1796Zdu3Y8/vjjuFwu3nnnnfi5wuEwr776Kj169Gj2NnOA6667jvPOO4/WrVvTr18/nnrqKT799NMmexpOmzaNc845h65du/Lvf/+byspK5s2b12yd6enpALhcLrKysuLv77//fu644w7GjBlD69atOeecc3jggQd44YUXACgpKSErK4shQ4ZQUFBAnz59uOGGG4ADk2s6nQ673U5WVlaLkz/9+vXDZrNx++234/f78fl8/OUvfyEWi7U4oXss2rVrx6OPPkqHDh3o0KHDMR374IMPMmjQIDp37swdd9zBN998k3D78uHs2LGDp59+mj/+8Y/xtIqKiiYLrA6+r6ioaLae22+/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AODmm2/GvffeiwULFqB9+/ZR91+wYAF69+4ddXwr6+DBgwCAhISE075vRGVeE0RERERERNWOICKiamv79u0CgHjmmWeEEEIEAgFhs9nEu+++K4QQokaNGuLVV18VQgjhcDiETqcTI0eO1O6/cuVKAUCsXLlSm9arVy8BQMybNy/qsd5//30hy7JYs2ZN1PR58+YJAGLdunXatPr164thw4Zpt5955hlhs9nE7t27o+77+OOPC51OJ/78808hhBAHDhwQAERSUpIoKCjQlvv0008FAPH5559r01q3bi3q1KkjnE6nNm3VqlUCgKhfv742LS8vTwAQEydOLHP8hg0bJgCIp59+Omp6+/btRYcOHcosf6JevXqJli1bVjg/NzdXGI1G0adPH6EoijZ9zpw5AoB4++23hRBCbNmyRQAQixcvrnBds2fPFgBEXl7eKbfrRPXr1xcAyly6d+8u8vPzo5YdMmSISEtLi9rezZs3CwBi/vz5J32c+fPnCwDi+++/F3l5eeLw4cPi448/FikpKcJkMonDhw9ry/bq1Uv06tWrzDqGDRsW9fydzmuCiIiIiIioumFbAyKiaqx58+ZISkrSeslu3boVJSUl6NatGwCgW7duWmXl+vXroSiK1m/2ZEwmE+64446oaYsXL0bz5s3RrFkz5Ofna5d//OMfAICVK1dWuL7FixfjyiuvREJCQtR9MzIyoCgKfvzxx6jlBw8eHFVlGTktfv/+/QCA7Oxs/P7777j99ttht9u15Xr16oXWrVufcv9ONGrUqKjbV155pfZYZ+P777+H3+/Hgw8+CFk+/it35MiRiI2NxZdffgkAiIuLAwB8++23cLvd5a4rPj4eAPDpp59GtYKorM6dO2P58uVYvnw5vvjiCzz33HPYvn07brjhhqi2GLfffjuys7Ojns8FCxbAYrHgpptuqtRjZWRkICUlBXXr1sXNN98Mm82Gzz77DHXq1Dnt7Y441WuCiIiIiIioOmI4S0RUjUmShG7dumm9ZdetW4fU1FQ0atQIQHQ4G7muTDhbu3ZtGI3GqGl79uzB9u3bkZKSEnVp0qQJACA3N7fC9e3ZswfffPNNmftmZGSUe9969epF3Y6EcoWFhQCAQ4cOAYC2n6WVN+1kzGaz1pe29ONFHutsRLazadOmUdONRiMuu+wybX56ejrGjBmDt956C8nJycjMzMSrr74a1W928ODB6N69O+666y7UqFEDt956KxYtWlTpoDY5ORkZGRnIyMhAv3798OSTT+Ktt97CTz/9hLfeektb7pprrkGtWrWwYMECAICqqvjvf/+LG2+8ETExMZV6rFdffRXLly/Hxx9/jH/+85/Iz8+HyWSq1H0rcqrXBBERERERUXXEnrNERNVcjx498Pnnn+P333/X+s1GdOvWDY8++iiysrKwdu1apKWl4bLLLjvlOi0WS5lpqqqidevWeOGFF8q9T926dStcn6qquOaaa/DYY4+VOz8S8EbodLpylxNCVPgYZ6qix7rQZs2aheHDh+PTTz/Fd999h9GjR2Pq1Kn43//+hzp16sBiseDHH3/EypUr8eWXX+Kbb77BRx99hH/84x/47rvvzmg/rr76agDAjz/+iPvvvx9A6Hj861//wptvvonXXnsN69atQ3Z2Nm677bZKr7dTp07o2LEjAKB///7o0aMH/vWvf2HXrl1apbMkSeU+nxUNxHYhXxNEREREREQXCsNZIqJqLlIJu3btWqxbtw4PPvigNq9Dhw4wmUxYtWoVNmzYgH/+859n/DgNGzbE1q1bcfXVV0OSpNO+r8vl0iplz1b9+vUBAHv37i0z78Rpp7ut51JkO3ft2hUVivv9fhw4cKDM8WjdujVat26Np556Cj/99BO6d++OefPm4dlnnwUAyLKMq6++GldffTVeeOEFTJkyBePGjcPKlSvP6NgGg0EAgMvlipp+++23Y9asWfj888/x9ddfIyUlBZmZmae9fiAUqk6dOhVXXXUV5syZg8cffxxAqPK1vJYEkWpiIiIiIiKivwO2NSAiquY6duwIs9mMBQsWICsrK6py1mQy4fLLL8err76KkpKSSrU0qMigQYOQlZWFN998s8w8j8eDkpKSk953/fr1+Pbbb8vMKyoq0kLCykpLS0OrVq3w3nvvRQWLq1evxu+//x61rNVq1R7nQsvIyIDRaMTLL78cVeH5//7f/0NxcTH69esHAHA4HGWOQevWrSHLMnw+HwCgoKCgzPrbtWsHANoyp+vzzz8HALRt2zZqeps2bdCmTRu89dZb+OSTT3DrrbdCrz/z73N79+6NTp064cUXX4TX6wUQCux37tyJvLw8bbmtW7dq7TeIiIiIiIj+Dlg5S0RUzRmNRlxxxRVYs2YNTCYTOnToEDW/W7dumDVrFoDK9ZutyL///W8sWrQIo0aNwsqVK9G9e3coioKdO3di0aJF+Pbbb7VT2U/06KOP4rPPPsN1112H4cOHo0OHDigpKcHvv/+Ojz/+GAcPHkRycvJpbc+UKVNw4403onv37rjjjjtQWFiIOXPmoFWrVlGBrcViQYsWLfDRRx+hSZMmSExMRKtWrdCqVaszPhal5eXlaZWtpaWnp2Po0KF44oknMHnyZPTt2xc33HADdu3ahddeew1XXHGF1ipgxYoVuO+++3DLLbegSZMmCAaDeP/996HT6bRBuJ5++mn8+OOP6NevH+rXr4/c3Fy89tprqFOnTqWe16ysLHzwwQcAQpW7W7duxeuvv47k5GStpUFpt99+Ox555BEAOK2WBhV59NFHccstt+Cdd97BqFGjcOedd+KFF15AZmYmRowYgdzcXMybNw8tW7aEw+E468cjIiIiIiKqDhjOEhFdAnr06IE1a9ZobQxK6969O2bNmoWYmJgyFZKnQ5ZlLFu2DLNnz8Z7772HpUuXwmq14rLLLsMDDzxQpm9ssYorpwABAABJREFUaVarFatXr8aUKVOwePFivPfee4iNjUWTJk0wefJkxMXFnfb2XH/99fjvf/+LSZMm4fHHH0fjxo3xzjvv4N1338X27dujln3rrbdw//3346GHHoLf78fEiRPPWTibm5uL8ePHl5l+9dVXY+jQoZg0aRJSUlIwZ84cPPTQQ0hMTMTdd9+NKVOmwGAwAAhVrmZmZuLzzz9HVlYWrFYr2rZti6+//hpdunQBANxwww04ePAg3n77beTn5yM5ORm9evWq9PH79ddf8e9//xtA6LlMTk7GwIED8cwzz6B27dpllh86dCjGjh2Lhg0bolOnTmdziAAAAwcORMOGDTFz5kyMHDkSzZs3x3vvvYcJEyZgzJgxaNGiBd5//30sXLgQq1atOuvHIyIiIiIiqg4kwZE0iIjoEtKuXTukpKRg+fLlVb0p1Vp+fj5q1aqFCRMmlBs+ExERERER0dljz1kiIqqWAoFAmT6tq1atwtatW9G7d++q2ahLyDvvvANFUbRqWyIiIiIiIjr3WDlLRETV0sGDB5GRkYHbbrsNaWlp2LlzJ+bNm4e4uDhs27YNSUlJVb2J1dKKFSuwY8cOjB8/HldddRWWLFlS1ZtERERERER0yWI4S0RE1VJxcTHuvvturFu3Dnl5ebDZbLj66qsxbdo0NGzYsKo3r9rq3bs3fvrpJ3Tv3h0ffPBBuf1oiYiIiIiI6NxgOEtERERERERERERUBdhzloiIiIiIiIiIiKgKMJwlIiIiIiIiIiIiqgL6qt6A6kBVVWRnZyMmJgaSJFX15hARERER0UVMCAGn04m0tDTIMuthiIiIqGIMZyshOzsbdevWrerNICIiIiKiauTw4cOoU6dOVW8GERERXcQYzlZCTEwMgNAfV7GxsVW8NaFK3ry8PKSkpPCb+POEx/j84zE+/3iMzz8e4/OPx/j84zG+MHicz7+L6Rg7HA7UrVtX+z+CiIiIqCIMZysh0sogNjb2oglnvV4vYmNjq/wPz0sVj/H5x2N8/vEYn388xucfj/H5x2N8YfA4n38X4zFmSzQiIiI6lYvjrxYiIiIiIiIiIiKivxmGs0RERERERERERERVgOEsERERERERERERURVgOEtERERERERERERUBRjOEhEREREREREREVUBhrNEREREREREREREVYDhLBEREREREREREVEVYDhLREREREREREREVAUYzhIRERERERERERFVAYazRERERERERERERFWA4SwRERERERERERFRFdBX9QYQEREREdHfjxACQQF4VRVeVYVPFcevFRWeE6epKrxK9DTPCdOG2nRIreodIyIiIjoNDGeJiIiIiKgMIQQCQhwPRsOhqS/yc/jaVyog9VQQpGrLRUJVJTRNhTiHGww4LZZztz4iIiKiC4DhLBERERFRNaYKAW848PSoaplrdzgIjdyOhKa+0tWnUaGq0ALYcxqenoQOEsw6CWZZDl8kmGQZJjk8TXd8mrnUNFOpaUYA8W7nBdleIiIionOF4SwRERER0QWkCBEVnGoBqiLgDoen7ki4WiZwFdrtUOgamn6+I1SDFB2MmmQpHI6GpllKBammcGgaNS18u3Sgqk2TZehl6ay3UVVV5PpKzsHeEhEREV04DGeJiIiIiCoQObU/FI6WrU51n1Cd6j4hUI0EqCWKAofXh2CWAwFxfqJUGRIsulDgadHJsMgyrOHryO1IqKpVn0YFrSdMk2WtmlUnnX14SkRERERlMZwlIiIiokuOKkJBaUk4IHWrKkqCSui69HQlFJxGfo5Up0ZCVbeiQjkXdakCCCoq9JIAwjmnXpK0ANUcCVJ1MiyypIWpFt3x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x4iJiWnwa3J9/X5wOBxkZGTQtGlT9beOEAKn9wzeNfWEWW+u0/n3+eefc8cdd3DixAn0ej07duygY8eOTJgwgRkzZgBw33334XA4eP/996vZGvgiUceNG8cLL7zA4cOHkWWZoqIinnjiCf73v//hdDrp0qULc+fO9YtkOzWC9a233uKll14iIyODpKQkHn74Yf7xj38AJyPoli9fzquvvsrmzZtp0aIFCxcupFu3bmobixYt4vnnn+fEiRMMGDCAnj178vzzz1NUVMSSJUu45557/I5/8eLFjBw5EkmSWLRoEV988QXffPMNjRo14qWXXmLIkCE1jlufPn1Yv3693zrfNfWHH37g6aef5ueffyYyMpKhQ4cyffp0rFYrAK+//jpz587lyJEj2Gw2evbsySeffMLIkSNZunSpX5u+sTgTvvN6zZo1XHfddTXWqYutQZ8+fbjiiiswGAy8//77XHnllSxevJimTZuyfft2NfCqqKiIsLAwvvvuO/r06UNqaip9+/ZlzZo1TJgwgbS0NDp06MDixYvViM66MHv2bBYsWMDBgwcBWLBgARMnTiQ3N1f9HfLUU0+xatWqWiMvvV4vYWFhzJ8/n7vuuguA2267DaPRyHvvvVfjNsXFxURFRfHBBx/wt7/9DVDE49atW7Np0yauueYate6CBQv473//y6RJk7juuuuqRZtWHcuaoqDj4+OZOHEiY8eOVdfdfPPNWCwW3n///boNVBWOHTtGdHQ069evp1evXjXW+fjjj7njjjsoLy/3E0ZPdyxz5sxhwYIFHDhwQK3/6quvMnPmTI4ePVptH7VFkl9oC5OOHTvSqVMn3n77bQB+/vlnrrrqKjIzM2nSpAkAu3btol27dvz+++80b968Whs7d+6kQ4cOfP/99/Ts2bPOxwKKDtapUydef/11pk2bdsZI919//ZX27duTnp5Os2bNaqxTF1uD2q4boHxvnDlzJm+++Sa5ubm0bNmS5557Tj2XAXbv3s348ePZsGEDVquV/v37M3fuXCIjIwEoLy/nwQcfZMWKFQQHB/PEE0/w2Wef1dnWoLbzffjw4ZSXl/P555+r66655ho6dOjAwoULEUIQHx/P448/zhNPPAEon8eYmBiWLFnCbbfdVuP+Pv30U2666SacTuc5z+Kt6f92TVw6vypq4eeff6Zv377qa58X7N13382S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ceMYNmwYP/74Y7W+jxo1inbt2pGVleW33ul0EhUVxbPPPsvcuXNrPO5nn32W999/n0WLFpGSksI333zD0KFD2bhxIx07djzjuK1fv56xY8dy1VVX4fF4eOaZZ+jfvz9paWlYrVays7PJzs5mzpw5tGnThsOHDzNmzBiys7P55JNP6nwsP/74I3fddRdz585l8ODBZGVlMWbMGEaPHs2KFSsACA8PZ+LEiaSkpGAymfj888+55557iI6OZsCAAX7trVy5kp9++on4+PgzHqOPupwjRqORu+66i06dOhEaGsrOnTsZPXo0sizz4osv+rV36NAhnnjiCXr27FltX+Xl5Vx77bXceuutjB49+rT9evnll/1mofvwer0MGjSI2NhYNm7cSE5ODnfddRdGo7FaX/4IlJeX0759e+69916GDRtWY51Zs2Yxb948li5dStOmTXnuuecYMGAAaWlp6udvxIgR5OTksHr1atxuN/fccw/3338/H3zwgV9ba9asoW3bturrixZ0KOqBe++9VyxYsKA+mm4QiouLBSCKi4sbuitCCCG8Xq/IyckRXq/3rLf1lDpFxZ7jouirDJH/xk6RO+8Xv+XEf/eKsp9zhbvQoW5TUlIiNm/eLJYsWSIWLlwoFi5cKBYtWiRSU1PF8ePHL+ShXTKczxg3GM5yIX5eLMQ7NwixsJeyLB8txOGfhJDlhu2b2ynEiYNCHFwvxC/vC5E6S8j/e0g43rpRyL6+nm55o48Q//m7EF8/I8TmN4XY940QObuEKM4S4nJ6jy4yl+V5fJmhjXH9o41x/aON8cVBG+f651Ia4/r6/WC320VaWpqw2+3qOlmWhdvpaZBFruN3zM8++0zYbDbh8XiEEEJs375dAGLChAlqnVGjRokRI0YIIYRYvHixsNlsatnkyZNF+/btxaJFi0RSUpKQJEkIIURhYaEYNWqUiIyMFMHBwaJv375ix44d1baryqJFi0RKSoowm82iVatW4rXXXlPLMjIyBCCWL18u+vTpIywWi2jXrp3YuHGjXxtvvvmmaNy4sbBYLOKmm24SL730ktrfxYsXC5SQF3VZvHixEEIIQCxatEjcdNNNwmKxiObNm4v//e9/tY5b7969q7XlY8OGDeLaa68VAQEBonHjxuKhhx4SZWVlavlrr70mmjdvLsxms4iOjhY333yzEEKIu+++u1qb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FStWdBMJtm3bRmxs8SLzyZMnWbNmDWvXrkWXt3DtI488gtlsZtOmTfj6+rJ48WLuvfdejh8/TkBAYW/2FStWMGHCBBYsWECTJk04ePAggwYNwmKx0L9/fyXf2LFjmT17NrVr12bs2LH07duXkydPotfr2blzJ0OGDGHmzJncf//9fP/9927iTJ8+fThy5AjffPMN33//PYDb9PnJkycTFxfHrFmzmD9/Pv369ePs2bNFtnft2rU0btyYZ599lkGDBinpp06domvXrkydOpWlS5dy+fJlhg0bxrBhw4iPj2ffvn0MHz6cjz76iFatWnHt2jVFMHz77bc5fvw4d911F1OmTAEgMLBwUIkkSXz99de8/PLLxMTEcPDgQcLDw3n11VfLxDP3hx9+wMfHh82bN5d63xsdn5Lgemjiyr97924aNmzoNiU8JiaG5557jt9++02JjC2IJElkZGS4Hbf169cTExPDI488wrZt26hSpQrPP/+8cuwSExNJSkqiU6dOyj6+vr60aNGC3bt3K+LspUuXGDRoEOvWrbvlmchWq7WQEGQ2m9m7dy92u91N9CwJ2dnZ2O32Is9TF2lpaWg0Gvz8/JS0m/WlWbNmaLVa5QFGZmYmH330EZ06dXJrY3x8PKdPn+bjjz9m6tSpN2yrzWbj448/ZtSoUSUSZpOTk9mzZw/9+vWjVatWnDp1ioiICN544w3atGlT5D7r16/n6tWrhR7EXE9aWhr16tVzS5syZQpBQUEMHDiwkJBfkutu//792O12t/MoIiKC6tWr31CcvRk3um8ATJ8+nY8//phFixZRu3ZtfvzxRx5//HECAwOJjo4mNTWVjh078swzzzB37lxycnKIjY2ld+/ebNmyBYAxY8awbds2vvzyS4KCgnjttdc4cOBAkQ8eSsPu3bsZNWqUW1pMTIwiepfk2jtw4ADnz59Hq9XSpEkTkpKSiIyMZNasWUr0bXlSLuJst27dGDNmDEePHqVhw4aFLvzingzeCjNnzmThwoUsX76cBg0asG/fPp566il8fX0ZPnw4ULqpAyr/21izszm9fw+/70goUpTV5S3Scf0idoW4dBS2zYSUM/Ln8HbQZuStL9DzH0KnN+Dp64ckSZhycvGweJVrdItrqp81S14wLTcrE2t2pvLZmp2F3WrFYbPisNtx2Kw4894dNhsOmw1JkhBCQnI4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H0WdP378NTPbNx0IoRdFEKSKUiygIuBhwcPT44uKJ3r6s3fOU0Q9xYaNs+Md6lnxbGcXQRAU6SCIBkEQBUIo6dtnPr8/JjtkTQKhhAC+n4/Hkt2Zz8585rObIfve97w/jzzCihUr6px5+8ADD3DHHXfw6quv0rZtW+d409LSSEtLIx6Pc84557B48WI++OADTNN02uTk5ODxeOp0LFu3buW///0vAwcOJBKJMGXKFN58801mzZrlPO/JJ5+kdevWTtmKL7/8kokTJ6ZkjpeXl7N69WrncfL3Lycnp1o/fiuZETpixAjy8vJYs2YNt9xyC4cffjhDhgxx2j3xxBP079+ftLQ0pk2bxs0338z999+fkhW6evVqysvLKSgoIBwOO69L586d8Xg8DBs2jEcffZS7777bKWvw97//3akLres6Rx11VEr/cnNz8fl8KctvvfVWTjvtNFq3bk1ZWRmvvvoqM2fO5NNPP93pse7M2rVree655zjzzDNp3rw5+fn5/Pjjj04g9Y477uD000+ndevWnHPOOei6zrJly1ixYgX33HNPnc7J1157LRdddBG9e/fmuOOO45VXXuG7777bZfbxrsY1WQpizJgxjB07lhUrVvD444+nTOR17bXXMmDAAB5++GGGDRvG66+/zsKFC53fz4Y456VQYpdKSkoUoEpKShq6K0oppaZNflJNe3Gy+jV/pTITiTo9Z/r3BerMf85Wp0+arR7+9AeVMK366ZyZUGru00o9c6J9e/cKpSq21c++6pFpmmrTpk3KNM2G7sohqy5jHI4l1K9FIbX812L15apC9cGyjeqdxb+qV775WT02bZW6/o0l6uwn56jTJ83e6e3MJ+aoC/41T/31pQXqmtcWq7H/XaYe/vQH9e6SX9XyX4tVRTS+H498/5H3cf2TMa5/Msb1T8Z4/5Bxrn8H0hjX1+eHcDisVq5cqcLh8D7d7v5y7bXXKkB9//33zrLu3burvLy8lHZTpkxRmZmZzuPx48er7t27V9teaWmpuvrqq1Xz5s2V2+1WrVq1UqNGjVLr16+v9XmvvPKK6tGjh/J4PCo7O1udeOKJ6u2331ZKKbV27VoFqCVLljjti4qKFKC++OILZ9lzzz2nWrRoofx+vxo+fLi65557Uo4hEomoESNGqKysLAWoKVOmKKWUAtQ777yT0p/MzExnfU3mzp2r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evfuzcyZM7n++uu56667KC8vp6SkhNWrV9cY6EiKxWK89NJLTiBxzpw5zJ8/n8LCQrxe+z+qiRMn8u677/Lf//7XuSS6qvHjx/Pwww/zxz/+EYB27dqxcuVKnn322ZTg7E033cSwYcMAO5japUsXVq9eTadOnfjnP//Jaaed5mQ+HnHEEXz99ddOVp/f7yctLQ2Xy0VeXvUrEi+66CJGjhwJwIQJE5g0aRLz589n6NCh1drm5ORgGIZT/zDpvvvuY9SoUU72WIcOHZg0aRIDBgzg6aefZv369QSDQU4//XTS09Np06aNE2DMzMzE4/EQCARq7F9SMnBx66238uyzzxIMBnn00Uf59ddfq11SvSeCwSDPP//8HpUz2Nnrsytbt27lH//4R8r7o6CgICUwCziPq9YLrWrixImUl5dz7rnnOst++uknnn76aW644Qb+/ve/s2DBAq655ho8Hg+jR492tlXTvpLrlFJcdNFFXH755fTu3Zt169bt8phqMmTIEJ5//nmGDx9Or169WLRoEc8//zzxeJytW7fSrFmz3dre2LFjad68eUpwq6pIJMLYsWMZOXJkytUC11xzDb169SInJ4evv/6aW2+9lU2bNjnByIKCAtq1a5eyrapjn52dXevrU/W1eeCBB3C5XNVKA9TFTz/9BNiZpY888ght27bl4YcfZuDAgdW+6Bk5ciTvvfce4XCYM844g+eff95Z16xZM5555hl69+5NNBrl+eefZ+DAgcybN49evXoBdlZwaWkpnTp1wjAMTNPk3nvvZdSoUXt8LP/6178YMmQILVu23O1jr2r9+vXk5eUxaNAg3G43rVu35thjj3XWTZkyhfXr1ztlFm666SY++eQTpkyZwoQJE+p0Xvr444+ZP38+xxxzjNP3I488cq/6vXXrVkzTrPE9ksy+TmZm//aLg6rvoyFDhvDYY4/x2muvce6551JQUOB8gbUvznm7IsHZ35PQdph5P/wyz37c7kQ48WbwNWypBiGEEKImdoBYJ81r0CTd2+CXKe9MRTSBy9DwuozK0guqMqt1R0A2meFqWopwzC5HYVZmB6vKQKICpyaxrmGXbXDruHWduGVRGo5TFrED0JqGXZJBtwOB4ZjJ1vIom0oiROJWZXkGzSnjAHZg0VMZXN5aHqUkFMdUimgkguH2EIlbhGImmgbZAQ8ZfhdxU1EeSVASjhMzLaf8g2kpIgmThKmc0hKRuIlVeTyAPRZA3DTtBXt55fXm0ig/bi7fu400kB1B8HV7HATXNUirDOJqVAaukxnZhlYZ1N6x9cqEbDszG5zAcTK+q1U+Tga2owmTUGVZFK1KUDyZ8e33GLh0+/1jWiqlTIjHpeMy7DrRiSq1tZPHDsnt2L/HMdMkw+emUZqXgMdwsryT+9O0HUF6vfJn1eMzDI2EqQjFEkQrM+gtZdE5W6NKeb/fBV33cnSvNxps33U1YMAAZs6cyY033sjs2bO57777mDp1KnPmzGH79u00b96cDh061Pr8Nm3apGR4Llu2jPLycho1apTSLhwOs2bNmmrPr6ioYM2aNYwZMyYlCzWRSKRktgJ067YjcSUZxCosLKRTp07k5+dz9tlnp7Q/9thjUy653pmq2w4Gg2RkZOx25tiyZcv49ttveeWVV5xldnkLi7Vr13LqqafSpk0b2rdvz9ChQxk6dChnn332bmVhut1u3n77bcaMGeMEiQcNGsRpp522TyYK7dq16x7Xmd3Z67MzpaWlDBs2jM6dO3PnnXfu0b4BXn31Ve666y7ee++9lHqilmXRu3dvp05tz549WbFiBc8880xK8H9n/vnPf1JWVpaSBbgnxo0bR0FBAX379kUpRdOmTRk9ejQPPvjgbv89df/99/P6668zc+bMGi/LjsfjnHvuuSilePrpp1PWVc147datGx6Ph8suu4z77rvP+VJlby1atIjHH3+cxYsX79F8BJZl/x9y2223MWLECMAuRdKyZUvefPNNLrvsMqfto48+yvjx41m1ahW33norN9xwA0899RQAHTt2pGPHjk7b/v37s2bNGh599FH+85//ADB16lReeeUVXn31Vbp06cLSpUu57rrraN68OaNHj97tY/n111/59NNPmTp16m4f92/96U9/4rHHHnPOG3/4wx8444wzcLlcLF++HNM0OeKII1KeE41GnXPwrs5Lq1atwuVycfTRRzvrO3XqVGsJiP1t8ODBPPTQQ1x++eVccMEFeL1exo0bx+zZs/fLZxAJzv5e/LoQZtwD4SIwPND/ajjyDJn0SwghhNgHgt4df1LpuoaOdtD8kbW3dTpNSzmBM8tSlEbidl1gUssuJLOUa1L1A4iqDFInJ4YDO9PWtBRFFTE2l0XYUhYlbipn/wmrMhvaTN6vLJFR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+fPVqaeeqtLS0lQwGFTdunVT9957r1JKqdmzZ6sBAwao7Oxs5ff7Vbdu3dQbb7zhPDc/P1/17dtX+f1+Bai1a9fWuO/HH39ctWzZUrndbtW6dWt1++23q2g0Wmtfq47hzowePVqdddZZ1ZZv2LBBDR48WAWDQdWhQwf10UcfpYxPXV+fqr744guFfa1AtVvV4163bp067bTTlN/vV40bN1Y33nijisfjzvoBAwbUuI3Ro0en7O/9999XRx11lPJ6vapTp07queeeS1lvWZYaN26catq0qfJ6veqUU05R+fn5tY5VTceslFJt2rSpsT9JK1euVD169FB+v19lZGSos846S/3www+17ue3atv++PHjU/pV0y35WixatEj16dNHZWZmKp/Pp4488kg1YcIEFYlEUva1bNkydfzxxyuv16tatGih7r///mr9mTp1qjriiCOUx+NRXbp0UR9++OEu+//oo4/W+XhjsZi68cYbVW5urkpPT1eDBg1SK1ascNbPmDFD9evXzzmWDh06qLFjx6qioiKnzQMPPKAOO+ww5fP5VE5Ojho4cKCaMWNGyn5KS0vVtddeq1q3bq18Pp9q3769uu2223b6e1XbsYwcOVL179+/zsc4fvz4au/Xqt555x3Vp08flZGRoYLBoOrbt6/6/PPPnfWxWEzdcccdqm3btsrtdqtmzZqps88+W3377bdOm52dl5RSatOmTWrYsGHK6/Wq1q1bq5deemmXr1Vt77UBAwaktPvnP/+pWrdurTwejzr22GPVN998k7I+HA6rK664QmVnZ6tAIKDOPvtstWnTppQ2J510kvMa9+nTR3300Uc7GdG6qev/25pS+6Ca9yGutLSUzMxMSkpKdllDZX/Y6WVx8Qh8PQl++NB+nNcVTh4H6U2rb0jUam/r74ldkzGufzLG9U/GuP7JGNc/GeP9Q8a5/h1IY1xfnx8ikQhr166lXbt2NU7MIxrGpZdeyg8//MDs2bMbuisNbt26dbRr126fTBomhNh37rzzTtatW8cLL7zQ0F35Xanr/9tS1uBQsv0n+PwuKFpnX/vW83w4+i+g74cUbCGEEEIIIYT4HZg4cSKnnnoqwWCQjz/+mBdffNGZsV0IIYTYXfK1/aFAKfj+fXj7MjswG8iBYQ/DMZdIYFYIIYQQQggh9qH58+dz6qmn0rVrV5555hkmTZq0z+o+CrE/JGvH1nQ71DLAJ0yYUOuxnnbaaQ3dPSEAyZw9+IW2w5cT4eev7MetjoWBt9oBWiGEEEIIIYQQ+9TUqVMbugsHrKysLMaPH9/Q3RC7kJxArCYtWrTYfx3ZDy6//HLOPffcGtftajKqQ8nAgQMpLi5u6G6IWhwSwdkNGzYwduxYPv74Y0KhEIcffjhTpkxxZuhUSjF+/HgmT55McXExxx13HE8//TQdOnRo4J7vpTUz4OvHIVIKusvOlO12HkgdMyGEEEIIIYQQ+1lWVhZ33nlnQ3dD7EJylvvfg5ycHHJyJHlt4MCBDd0FsRMHfRSvqKiI4447Drfbzccff8zKlSt5+OGHyc7Odto8+OCDTJo0iWeeeYZ58+YRDAYZMmQIkUikAXu+FyIlpM17GG3GP+zAbKPD4Y/PQY+REpgVQgghhBBCCCGEEOIgcdBnzj7wwAO0atWKKVOmOMvatWvn3FdK8dhjj3H77bdz1llnAfDSSy/RtGlT3n33Xf785z9X22Y0GiUajTqPS0tLAXsGWMuy6utQ6mb7T/DhjXjKtoDHg9XzAuhxPhhuaOi+HUIsy0Ip1fCv9yFMxrj+yRjXPxnj+idjXP9kjPcPGef6dyCN8YHQByGEEEIcHA764Oz//vc/hgwZwp/+9CdmzZpFixYtuOKKK7j00ksBWLt2LQUFBQwaNMh5TmZmJn369GHu3Lk1Bmfvu+8+7rrrrmrLt2zZ0vDZtqaHTM1H3J9Hcd/rsBodAduKGrZPhyDLsigpKUEphS7ZyPVCxrj+yRjXPxnj+idjXP9kjPcPGef6dyCNcVlZWYPuXwghhBAHj4M+OPvTTz/x9NNPc8MNN/D3v/+dBQsWcM011+DxeBg9ejQFBQUANG3aNOV5TZs2ddb91q233soNN9zgPC4tLaVVq1Y0adKEjIyM+juYOrLOmEhxhUWTvBYN/ofnocqyLDRNo0mTJjLG9UTGuP7JGNc/GeP6J2Nc/2SM9w8Z5/p3II2xz+dr0P0LIYQQ4uBx0AdnLcuid+/eTJgwAYCePXuyYsUKnnnmGUaPHr1H2/R6vXi93mrLdV1v8D/0AMhsgRYtPHD6c4jSNE3GuJ7JGNc/GeP6J2Nc/2SM65+M8f4h41z/DpQxbuj9CyGEEOLgcdD/1dCsWTM6d+6csuzII49k/fr1AOTl5QGwefPmlDabN2921gkhhBBCCCGEODC88MILZGVl7fV27rzzTnr06LHX29lXNE3j3XffbehuNLgXXnhBZo4X4gB0oP5uDhw4kOuuu66hu1GvDvrg7HHHHUd+fn7KslWrVtGmTRvAnhwsLy+P6dOnO+tLS0uZN28e/fr12699FUIIIYQQQgixc+eddx6rVq1q6G7ssX0ZFG7bti2PPfbYPtlWUl0DHW+//TaDBw+mUaNGaJrG0qVLq7WJRCJceeWVNGrUiLS0NEaMGFEtMepAt2zZMkaOHEmrVq3w+/0ceeSRPP7449XazZw5k169euH1ejn88MN54YUXUtbfd999HHPMMaSnp5Obm8vw4cOrxSoA5s6dy8knn0wwGCQjI4MTTzyRcDjsrN++fTujRo0iIyODrKwsxowZQ3l5eY19X716Nenp6dW+zPjuu+8YMWIEbdu2RdO0Gt9DZWVlXHfddbRp0wa/30///v1ZsGDBrgcMiMfjjB07lq5duxIMBmnevDkXXnghGzduTGl35pln0rp1a3w+H82aNeOCCy5IaZOfn89JJ51E06ZN8fl8tG/fnttvv514PJ6ynTfffJNOnTrh8/no2rUrH330Ucr6urxXYddjvzOrVq3irLPOonHjxmRkZHD88cfzxRdf1Nh227ZttGzZEk3TKC4uTln3yiuv0L17dwKBAM2aNePiiy9m27ZtNW7n9ddfR9M0hg8fvlvHu337dq6++mo6duyI3++ndevWXHPNNZSUlNTpWA82mzZt4v/+7/844ogj0HW91vPbvngf1dc576APzl5//fV88803TJgwgdWrV/Pqq6/y3HPPceWVVwL2t5PXXXcd99xzD//73/9Yvnw5F154Ic2bN6/2BhdCCCGEEEII0bD8fj+5ubm1ro/FYvuxN79fFRUVHH/88TzwwAO1trn++ut5//33efPNN5k1axYbN27kj3/84z7vS32+5osWLSI3N5eXX36Z7777jttuu41bb72VJ554wmmzdu1ahg0bxkknncTSpUu57rrruOSSS/j000+dNrNmzeLKK6/km2++Ydq0acTjcQYPHkxFRYXTZu7cuQwdOpTBgwczf/58FixYwFVXXZVSCmXUqFF89913TJs2jQ8++IAvv/ySv/71r9X6HY/HGTlyJCeccEK1daFQiPbt23P//ffXesXwJZdcwrRp0/jPf/7D8uXLGTx4MIMGDWLDhg27HLNQKMTixYsZN24cixcv5u233yY/P58zzzwzpd1JJ53E1KlTyc/P56233mLNmjWcc845znq3282FF17IZ599Rn5+Po899hiTJ09m/PjxTpuvv/6akSNHMmbMGJYsWcLw4cMZPnw4K1ascNrU5b1al7HfmdNPP51EIsGMGTNYtGgR3bt35/TTT69xLqMxY8bQrVu3asu/+uorLrzwQsaMGcN3333Hm2++yfz5850J7atat24dN910U42v766Od+PGjWzcuJGJEyeyYsUKXnjhBT755BPGjBlTp2M92ESjUZo0acLtt99O9+7da2yzr95H9XbOU4eA999/Xx111FHK6/WqTp06qeeeey5lvWVZaty4capp06bK6/WqU045ReXn59d5+yUlJQpQJSUl+7rre8Q0TbVp0yZlmmZDd+WQJWNc/2SM65+Mcf2TMa5/Msb1T8Z4/5Bxrn8H0hjX1+eHcDisVq5cqcLhsLPMsiwVSpgNcrMsq079fv/991VmZqZKJBJKKaWWLFmiADV27FinzZgxY9SoUaOUUkpNmTJFZWZmOuvGjx+vunfvriZPnqzatm2rNE1TSilVVFSkxowZoxo3bqzS09PVSSedpJYuXVrteVVNnjxZderUSXm9XtWxY0f15JNPOuvWrl2rAPXWW2+pgQMHKr/fr7p166a+/vrrlG0899xzqmXLlsrv96vhw4erhx9+2OnvlClTFJBymzJlilJKKUBNnjxZDR8+XPn9fnX44Yer9957r9ZxGzBgQLVtJc2ePVsdf/zxyufzqZYtW6qrr75alZeXO+uffPJJdfjhhyuv16tyc3PViBEjlFJKjR49uto2165dW2sfqo7LkiVLUpYXFxcrt9ut3nzzTWfZ999/rwA1d+7cWrc3ZcoUNWDAgJ3us02bNuruu+9WF1xwgUpPT1ejR49WX3zxhQJUUVGR0y75XkoeQ/K988knn6hOnTqpYDCohgwZojZu3LjT/f3WFVdcoU466STn8S233KK6dOmS0ua8885TQ4YMqXUbhYWFClCzZs1ylvXp00fdfvvttT5n5cqVClALFixwln388cdK0zS1YcOGlLa33HKLOv/886v9vvxWmzZt1KOPPpqyLBQKKcMw1AcffJCyvFevXuq2226rdVs7M3/+fAWon3/+udY27733ntI0TcVisVrbXH/99er4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GDNmTMqVlolEgszMzJS2VWtFNmvWDLAz7zp16kR+fj5nn312Svtjjz22xoBTTapuOzkpUWFhYZ2em7Rs2TK+/fZbXnnlFWeZUgrLsli7di2nnnoqbdq0oX379gwdOpShQ4dy9tlnEwgEdms/Da1q9ujuCAQCTmAW7NewrmO8YsUKzjrrLMaPH8/gwYP3aP8AV155JStWrEjJzLQsC4DLLruMv/zlLwD07NmT6dOn8+9//5v77ruvTtu+9NJL+b//+7+UjMU98Z///IeLL76YFi1aYBgGvXr1YuTIkSxatGi3thOPxzn33HNRSvH0009XW3/zzTczZswYfv75Z+666y4uvPBCPvjgAzRtx/njjTfeoKysjGXLlnHzzTczceJEbrnllr06vqr2duyVUlx55ZXk5uYye/Zs/H4/zz//PGeccQYLFiygWbNm3HrrrRx55JGcf/75tW5n5cqVXHvttdxxxx0MGTKETZs2cfPNN3P55Zfzr3/9i7KyMi644AImT55M48aN98mxl5aWMmzYMDp37sydd965V9va2bll9erVhEIhTj311JTnxGIxJ4C7bNkyvvjiC9LS0qpte82aNYTDYWKxGH369HGW5+Tk0LFjx73q98FAgrNCCCGEEEIIcZDSNA2/UfcgaUMZOHAg//73v1m2bBlut5tOnToxcOBAZs6cSVFR0U6zZsEOZFZVXl5Os2bNUkojJNV0WXVytvvJkyenfPAHMAwj5XHVS66TAaRkcGdv/fZybk3Tdnvb5eXlXHbZZVxzzTXV1rVu3RqPx8PixYuZOXMmn332GXfccQd33nknCxYsqPWS8z2Rl5dHLBajuLg4ZbubN2/e66xcqP6aJy8TV2pHOY14PF7teTWNcdXn1GblypWccsop/PWvf+X2229PWZeXl1dtRvbNmzeTkZFRLWv2qquucibyqprxlwz0d+7cOaX9kUceyfr16539/DaQnEgk2L59uzOmM2bM4H//+x8TJ04EdgTmXS4Xzz33HBdffPEujxXgsMMOY9asWVRUVFBaWkqzZs0477zzaN++fZ2eDzsCsz///DMzZsyoMZO3cePGNG7cmCOOOIIjjzySVq1a8c033zjZlYBTWqNz586Ypslf//pXbrzxRgzDqHXsd+c9Vpex35kZM2bwwQcfUFRU5BzjU089xbRp03jxxRf529/+xowZM1i+fDn//e9/gR3v08aNG3Pbbbdx1113cd9993Hcccdx8803A/aXNcFgkBNOOIF77rmHzZs3s27dOs444wxn38nzg8vlIj8/P+WLh10pKytj6NChpKen884779RaTqKu0tPTaz23JM+xH374IS1atEh5XvLqhvLycs4444waJ9xq1qwZq1ev3qv+7cy+eB/V5zlPgrNCCCGEEEIIIepVsu7so48+6gRiBw4cyP33309RUVHK5et10atXLwoKCnC5XLRt23aX7Zs2bUrz5s356aefGDVq1J4cAgAdO3ZkwYIFKct++9jj8WCa5h7vY1fb6tWrFytXrtzp5ecul4tBgwYxaNAgxo8fT1ZWFjNmzOCPf/zjPuvf0UcfjdvtZvr06YwYMQKA/Px81q9fnxJ421eSmdObNm1yLiXfV5d+f/fdd5x88smMHj06pYZwUr9+/fjoo49Slk2bNi3lOJVSXH311bzzzjvMnDmTdu3apbRv27YtzZs3Jz8/P2X5qlWrOO2005z9FBcXs2jRIqeW6YwZM7Asy/lSYe7cuSmv33vvvccDDzzA119/XS0oVhfBYJBgMEhRURGffvopDz74YJ2elwzM/vjjj3zxxRfVsthrkgw0RqPRnbaJx+NYloVhGPTr14/p06c7ZTyg+tjvSl3GfmdCoRBAtTqyuq47x/TWW28RDoeddQsWLODiiy9m9uzZTkA1FApVq/ma/HJIKUWnTp1Yvnx5yvrbb7+dsrIyHn/88d2qD11aWsqQIUPwer3873//q1ZfeE/Vdm459dRT8Xq9rF+/vtYv23r16sVbb71F27Zta6x9e9hhh+F2u5k3bx6tW7cGoKioiFWrVu3yC7xd2Rfvo/o850lwVgghhBBCCCFEvcrOzqZbt2688sorPPHEEwCceOKJnHvuucTj8d3+4D1o0CD69evH8OHDefDBBzniiCPYuHEjH374IWeffXaNl8TfddddXHPNNWRmZjJ06FCi0SgLFy6kqKiIG264oU77vfrqqznxxBN55JFHOOOMM5gxYwYff/xxyiXabdu2Ze3atSxdupSWLVuSnp7uZI7trrZt2/Lll1/y5z//Ga/XS+PGjRk7dix9+/blqquu4pJLLiEYDLJy5UqmTZvGE088wQcffMBPP/3EiSeeSHZ2Nh999BGWZTmXBrdt25Z58+axbt060tLSyMnJqXHyou3bt7N+/Xo2btwI4AS28vLyyMvLIzMzkzFjxnDDDTeQk5NDRkYGV199Nf369aNv3757dLw7c/jhh9OqVSvuvPNO7r33XlatWsXDDz+819tdsWIFJ598MkOGDOGGG25wakcahuEEhC+//HKeeOIJbrnlFi6++GJmzJjB1KlTU+rSXnnllbz66qu89957pKenO9vJzMzE7/ejaRo333wz48ePp3v37vTo0YMXX3yRH374wcm2PPLIIxk6dCiXXnopzzzzDPF4nKuuuoo///nPNG/e3GlT1cKFC9F13altC/al5CtXrnTub9iwgaVLl5KWluYE9T/99FOUUnTs2JHVq1dz880306lTJ+ey/52Jx+Occ845LF68mA8++ADTNJ3jzcnJwePxMG/ePBYsWMDxxx9PdnY2a9asYdy4cRx22GFOIOuVV17B7XbTtWtXvF4vCxcu5NZbb+W8885zsjyvvfZaBgwYwMMPP8ywYcN4/fXXWbhwIc8995zTn129V+sy9jvTr18/srOzGT16NHfccQd+v5/Jkyezdu1apz71bzNat27d6rxeySzLM844g0svvZSnn37aKWtw3XXXceyxxzqvb9XXEXZcCVB1+a6Ot7S0lMGDBxMKhXj55ZcpLS2ltLQUsL/k+O3VAnW1s3NLeno6N910E9dffz2WZXH88cdTUlLCV199RUZGBqNHj+bKK69k8uTJjBw5kltuuYWcnBxWr17N66+/zvPPP09aWhpjxozh5ptvplGjRuTm5nLbbbfVeH76reQXNeXl5WzZsoWlS5fi8XicbOl98T6q13OeErtUUlKiAFVSUtLQXVFKKWWaptq0aZMyTbOhu3LIkjGufzLG9U/GuP7JGNc/GeP6J2O8f8g4178DaYzr6/NDOBxWK1euVOFweJ9ud3+59tprFaC+//57Z1n37t1VXl5eSrspU6aozMxM5/H48eNV9+7dq22vtLRUXX311ap58+bK7XarVq1aqVGjRqn169fX+rxXXnlF9ejRQ3k8HpWdna1OPPFE9fbbbyullFq7dq0C1JIlS5z2RUVFClBffPGFs+y5555TLVq0UH6/Xw0fPlzdc889KccQiUTUiBEjVFZWlgLUlClTlFJKAeqdd95J6U9mZqazviZz585V3bp1U16vV1X9+D5//nx16qmnqrS0NBUMBlW3bt3Uvffeq5RSavbs2WrA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zN2fiJlIqWhoaJZ9zRSNLNdUylxS0SzNFbUsTUsrd0vLXHM3ldJU3MVUkBRQFNn3mfP7g7g5ATIo46C+X88zj3DPued8zuHOIJ85cy4REREREZEJMDlLREREREREREREZAJMzhIRERERERERERGZAJOzRERERERERERERCbA5CwRERERERERERGRCTA5S0RERERERERERGQCTM4SERERERERERERmQCTs0REREREREREREQmwOQsERERERERERERkQkwOUtERERERERERERkAkzOEhEREREREREREZkAk7NEREREREREREREJsDkLBEREREREREREZEJMDlLREREREREREREZAJMzhIRERERERERERGZAJOzRERERERERERERCbA5CwRERERERERERGRCTA5S0RERERERERERGQCTM4SERERERERERERmQCTs0REREREREREREQmwOQsERERERERERERkQkwOUtERERERERERERkAkzOEhEREREREREREZkAk7NEREREREREREREJsDkLBEREREREREREZEJMDlLREREREREREREZAJMzhIRERERERERERGZAJOzRERERERERERERCbA5CwRERERERERERGRCTA5S0RERERERERERGQCTM4SERERERERERERmQCTs0REREREREREREQmwOQsERERERERERERkQkwOUtERERERERERERkAkzOEhEREREREREREZkAk7NEREREREREREREJsDkLBEREREREREREZEJMDlLREREREREREREZAJMzhIRERERERERERGZAJOzRERERERERERERCbA5CwRERERERERERGRCTA5S0RERERERERERGQCTM4SERERERERERERmQCTs0REREREREREREQmwOQsERERERERERERkQkwOUtERERERERERERkAkzOEhEREREREREREZkAk7NEREREREREREREJsDkLBEREREREREREZEJMDlLREQmsWLFCshkMsTHx5s6FCIiIiIiIiKTYHKWiOgJd+7cObzxxhuoVasWlEol3Nzc0LdvX5w7d87UoZmUVqvF8uXL0aFDBzg4OECpVMLb2xsDBw7En3/+aerwAADnz5/HlClTDE5gT5kyBTKZTHrI5XK4urqiW7du+P3336s0tnv7kclk0Gg0CAwMxNatW6u0HyIiIiIioieZ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/4bs47rrrqtzrkOGDAlps23bNoYPH05sbCxWq5VzzjmHZcuWHdO51HccRVHo3Llzk8/3VPLKK6/Qr18/rFZrg7/XsrIyrrnmGqxWK1FRUYwZMwaHI3QOm/Xr13PuuediMplITU3lqaeeClnv8/mYOnUqmZmZmEwmunbtypdfftmcp9YiyeSsJEkAmLQaxqfFhyxbV+UM/l9F8PaBUtQGatVKkiRJkiRJkvTnrFu3josuuoghQ4awdu1a3n//fT799FP+85//HPdj+Xy+477PWj///DNdunTho48+Yv369YwePZpRo0axaNGikDZXXXUVY8aMYe3atVx66aVceumlbNy4EQCn08lvv/3Ggw8+yG+//cbHH39Mbm4ul1xyScixPvroI0aOHMno0aNZt24dP/30E1dffXVwfSAQYOjQoXi9Xn7++WfefPNN3njjDR566KE6/a6oqGDUqFGcf/75ddZVV1fTtWtXXnjhhXrPWQjBpZdeyq5du/jf//7H2rVrSU9PZ+DAgVRXVx81ZgcOHODAgQM8/fTTbNy4kTfeeIMvv/ySMWPGBNusWbOG+Ph45s+fz6ZNm7j//vu59957mT17dp395ebmUlBQEPyJj//9vd7777/PxIkTmTx5Mr/99htdu3Zl8ODBFBcXB9vccccdfPbZZyxYsIDvvvuOAwcOcPnll9fb9zFjxtClS5ejnuORrrzySpYuXcprr71Gbm4u7777LllZWcH1NpuN+++/nxUrVgSvo9GjR/PVV1+F7GfIkCEh5/ruu++GrL/44ovx+/18++23rFmzhq5du3LxxRfXSVg3di6zZs0KOca+ffuw2WxcccUVx3zepwKn08mQIUO47777GmxzzTXXsGnTJpYsWcKiRYv4/vvvufHGG4PrKysrGTRoEOnp6axZs4bp06czZcoUXnnllWCbBx54gDlz5vD888+zefNmbrrpJi677DLWrl3brOfX4gjpqOx2uwCE3W4/2V0RQggRCAREQUGBCAQCJ7srf1l/1xgvKCgVF6ze2ujP0oN1nwcry6vEGrvjmI71d43xiSRj3PxkjJufjHHzkzE+MWScm19LinFzvX9wuVxi8+bNwuVyBZepqir8ftdJ+VFVtcl9DwQCYtq0aSIzM1MYDAaRmpoqHn300eD69evXi/79+wuTySRsNpsYO3asqKqqCq7v27evmDBhQsg+hw8fLrKzs4OP09PTxWOPPSZGjx4twsPDRWpqqpgzZ05wPRDy07dv3zr93L17d512tccIBALi8ccfFxkZGcJkMokuXbqIBQsWBLctKysTV199tYiNjRUmk0m0bdtWvP76600+thBC3HvvvaJXr14hyz799FNhMplEZWVlg/GdPHlySCzqA4gXX3xRDBs2TISFhYnJkyeLefPmicjIyJB2CxcuFIenCiZPniy6du0q3nrrLZGeni6sVqv417/+1Wh/6nPRRReJ0aNHBx9feeWVYujQoSFtevfuLf797383uI9Vq1YJQOzdu1cIIYTP5xOtWrUSr776aoPbfP7550Kj0YjCwsLgspdeeklYrVbh8XhC2v7rX/8SDzzwQPCcGwKIhQsXhizLzc0VgNi4cWNwWSAQEHFxcWLu3LkN7qsxH3zwgTAYDMLn8zXY5uabbxb9+/cPPl62bJkARHl5eYPbnHHGGWL8+PEh/UxOThZPPPGEEEKIiooKodfrQ67vLVu2CECsWLEiZF8vvvii6Nu3r1i6dOlRj3u4L774QkRGRorS0tImta/VvXt38cADDwQfZ2dni+HDhzfYvqSkRADi+++/Dy6rrKwUgFiyZMkfPpeFCxcKRVHEnj17Gu1venq6WLZsWYPr9+zZIy6++GIRFRUlwsLCRKdOncTixYuD6zds2CCGDBkiLBaLiI+PF9dee60oKSkJrj/afUkIIRYvXizatWsnTCaT6Nevn5g3b16Tf1cNXU+bN28WgFi9enVw2RdffCEURRH5+flCiJp4RkdHhzzPJk2aJLKysoKPk5KSxOzZs0P2ffnll4trrrnmqH1rTH1/L1sy3YlJAUuSdCpINhqO2mZtpZMBMVYAqvwB3i8s44PCMgA+69EOo0YOyJckSZIkSTpRVNXDmt/+dVKO3bPH+2i1pia1vffee5k7dy4zZszgnHPOoaCggK1btwI1IxIHDx5Mnz59WL16NcXFxdxwww3ccsstvPHGG8fUp2eeeYZHHnmE++67jw8//JBx48bRt29fsrKyWLVqFWeccQbffPMNnTt3xmCo+9o3NTWVjz76iBEjRpCbm4vVasVsNgPwxBNPMH/+fF5++WXatWvH999/z7XXXktcXBx9+/blwQcfZPPmzXzxxRfExsayY8cOXC4XQJOODTVf8zaZQmNqNptxu92sWbOGfv36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ly9HURQqKipO+LEBbrvtNnr27InRaKRbt271tlm/fj3nnnsuJpOJ1NRUnnrqqePW1xNl7ty5nHvuuURHRxMdHc3AgQNZtWpVSBshBA899BBJSUmYzWYGDhzI9u3bg+v37NnDmDFjaN26NWazmczMTCZPnozX662zn6effpr27dtjNBpp1aoVjz32WEib5cuX06NHD4xGI23btm00Wfbkk0+iKAq33357yPJXXnmFfv36YbVaG7yGfvvtNy644AKioqKIiYnhxhtvxOFwNClm69at46qrriI1NRWz2UzHjh2ZNWtWSJsff/yRs88+m5iYGMxmMx06dGDGjBkhbV566SW6dOmC1WrFarXSp08fvvjii5A2breb8ePHExMTQ3h4OCNGjKCoKHSOkKZcq02JfWPefvttunbtSlhYGElJSVx//fWUlpbW2/a9995DURQuvfTSkOUOh4NbbrmFlJQUzGYznTp14uWXX26wvxdeeCGKovDJJ58c0/kuX76c4cOHk5SUhMVioVu3brz99ttNPtdTzccff8ygQYOIiYlp8P52vK6jv8I9rzEyOStJUoulKAoDY6ykm41Nam/UaBgSF0lmmIkeVgttwoxoFIUXOqaHtAvTaojQaekfY+WqBsosAAyLi6J9mIlzoxsvmQCwwl73BZVfCFyqyqv7S+qMxs2pcnL/tv04DyuN4FcFN2zaE9Ju6s4D/DNnBzdu2sN/tu2vGZkbCHDjpr1ctW5nnWP+UlFNQAjEYYlcSZIkSZIk6dRy/fXX869//avedZWVlQwaNIj09HTWrFnD9OnTmTJlCq+88spx7YMQAr/ff1z3ebjly5dz1VVXsWzZMlasWEFqaiqDBg0iP//3QQxPPfUUzz33HC+//DIrV67EYrEwePBg3O6aEmBbt25FVVXmzJnDpk2bmDFjBi+//DL33XdfyLEmTJjAq6++ytNPP83WrVv59NNPOeOMM4Lrd+/ezdChQ+nfvz85OTncfvvt3HDDDXz11Vd1+r169WrmzJlDly5d6qxzOp0MGTKkzvFrHThwgIEDB9K2bVtWrlzJl19+yaZNm7juuuuaFLM1a9YQHx/P/Pnz2bRpE/fffz/33nsvs2fPDraxWCzccsstfP/992zZsoUHHniABx54IOT6SElJ4cknn2TNmjX8+uuvDBgwgOHDh7Np06ZgmzvuuIPPPvuM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IiIikgAqzoqIiIiIiIiIiIgkgDvRAewLjDEAVFVVJTiSBo7jUF1djd/vx7ZVX28JynHLU45bnnLc8pTjlqcctzzleM9Qnlve3pTjxr8bGv+OEBEREdkeFWd3QXV1NQBFRUUJjkRERERERPYV1dXVpKenJzoMERER2YtZRh/n7pTjOKxbt47U1FQsy0p0OFRVVVFUVMT3339PWlpaosP5RVKOW55y3PKU45anHLc85bjlKcd7hvLc8vamHBtjqK6uprCwMOGzeEVERGTvppmzu8C2bdq0aZPoMLaSlpaW8Deev3TKcctTjluectzylOOWpxy3POV4z1CeW97ekmPNmBUREZFdoY9xRURERERERERERBJAxVkRERERERERERGRBFBxdh/k8/mYMGECPp8v0aH8YinHLU85bnnKcctTjluectzylOM9Q3luecqxiIiI7It0QTARERERERERERGRBNDMWREREREREREREZEEUHFWREREREREREREJAFUnBURERERERERERFJABVnRURERERERERERBJAxVkRERERERERERGRBFBxVkRERERERERERCQBVJwVERERERERERERSQAVZ0VEREREREREREQSQMVZERERERERERERkQRQcVZEREREREREREQkAVScFREREREREREREUkAFWdFREREREREREREEkDFWREREREREREREZEEUHFWREREREREREREJAFUnBURERERERERERFJABVnRURERERERERERBJAxVkRERERERERERGRBFBxVkRERERERERERCQBVJwVERERERERERERSQAVZ0VEREREREREREQSQMVZERERERERERERkQRQcVZEREREREREREQkAVScFREREREREREREUkAFWdFREREREREREREEkDFWREREREREREREZEEUHFWREREREREREREJAFUnBURERERERERERFJABVnRURERERERERERBJAxVkRERERERERERGRBFBxVkRERERERERERCQBVJwVERERERERERERSQAVZ0VEREREREREREQSQMVZERERERERERERkQRQcVZEREREREREREQkAVScFREREREREREREUkAFWdFREREREREREREEkDFWREREREREREREZEEUHFWREREREREREREJAFUnBURERERERERERFJABVnRURERERERERERBJAxVkRERERERERERGRBFBxVkRERERERERERCQBVJwVERERERERERERSQAVZ0VEREREREREREQSQMVZERERERERERERkQRQcVZEREREREREREQkAVScFREREREREREREUkAFWdFREREREREREREEkDFWREREREREREREZEEUHFWREREREREREREJAFUnBURERERERERERFJABVnRURERERERERERBJAxVkRERERERERERGRBFBxVkRERERERERERCQBVJwVERERERERERERSQAVZ0VEREREREREREQSQMVZERERERERERERkQRQcVZEREREREREREQkAVScFREREREREREREUkAFWdFREREREREREREEkDFWREREREREREREZEEUHFWREREREREREREJAFUnBURERERERERERFJABVnRURERERERERERBJAxVkRERERERERERGRBFBxVkRERERERERERCQBVJwVERERERERERERSQAVZ0VEREREREREREQSQMVZERERERERERERkQRQcVZEREREREREREQkAVScFREREREREREREUkAFWdFREREREREREREEkDFWREREREREREREZEEUHFWREREREREREREJAFUnBURkV+s4447juOOOy7RYYiIiIiIiIhsk4qzIiJ7sSeffBLLsrAsizlz5my13xhDUVERlmUxZMiQBETYEMP//d//ceyxx5KRkUFSUhIHH3wwN998M7W1tQmJaW/y+uuvY1kWhYWFOI6T6HC26bjjjos/zizLwuv10qFDB0aPHs3333/fbOO89957TcZxuVzk5eXx+9//nmXLljXbOCIiIiIiIvsKd6IDEBGRnfP7/UybNo1jjjmmyfb333+fNWvW4PP5EhJXLBbj3HPPZfr06fTt25cbb7yRpKQk/vvf/3LTTTcxY8YM3n77bVq1apWQ+PYGU6dOpX379qxcuZJ3332XAQMGJDqkbWrTpg233347AOFwmKVLl/LII4/w1ltvsWzZMpKSkpptrMsuu4wjjjiCSCTCF198wSOPPMJ7773H4sWLyc/Pb7ZxRERERERE9nYqzoqI7ANOOukkZsyYweTJk3G7f3jpnjZtGj169GDTpk0JievOO+9k+vTpXHXVVdx1113x7aNHj+ass87i1FNPZcSIEbzxxht7NK66urpmLSb+VLW1tfzrX//i9ttvZ8qUKUydOnWXirOO4xAOh/H7/Xsgygbp6emcf/75TbZ16NCBsWPH8uGHH3L88cc321h9+/bl97//ffz2/vvvz8UXX8zTTz/NNddc02zjiIiIiIiI7O20rIGIyD7gnHPOobS0lFmzZsW3hcNhXnjhBc4999xtHnP33XfTp08fsrOzCQQC9OjRgxdeeKFJmylTpmBZFk888UST7bfddhuWZfH6669vN6b6+nruuusuunTpEp9xuaWTTz6Z4cOH8+abb/Lxxx8DMGTIEPbbb79t9te7d2969uzZZNszzzxDjx49CAQCZGVlMXTo0K2+Zn/cccdx0EEHsWDBAo499liSkpL485//vM0xwuEw48ePp0ePHqSnp5OcnEzfvn2ZPXt2k3YrV67Esizuvvtu7rvvPtq1a0cgEKBfv34sXrx4uzn5sZkzZ1JfX8+ZZ57J0KFDeemllwgGg1u1syyLsWPHMnXqVA488EB8Ph9vvvkmAGvXruXCCy+kVatW+Hw+DjzwwK3ur109r93VOIu18QOB2bNnY1kWM2fO3KrttGnTsCyLuXPn7vY4ffv2BeDbb7+NbxsxYgTt27ffqu2NN96IZVlNtjXm7+WXX+aggw6K56kxhyIiIiIiInsrFWdFRPYB7du3p3fv3jz77LPxbW+88QaVlZUMHTp0m8fcf//9HHbYYdx8883cdtttuN1uzjzzTF577bV4m5EjRzJkyBCuvPLKeNFz0aJF3HTTTYwaNYqTTjppuzHNmTOH8vJyzj333Cazebc0bNgwAF599VUAzj77bFasWMEnn3zSpN2qVav4+OOPm5zLrbfeyrBhw+jcuTP33nsv48aN45133uHYY4+loqKiyfGlpaWceOKJdO/enUmTJtG/f/9txlNVVcXjjz/Occcdx8SJE7nxxhspKSlh4MCBLFy4cKv2Tz/9NJMnT2bMmDFcf/31LF68mN/85jds2LBhu3nZ0tSpU+nfvz/5+fkMHTqU6upq/v3vf2+z7bvvvssVV1zB2Wefzf3330/79u3ZsGEDRx11FG+//TZjx47l/vvvp1OnTowaNYpJkyb95PPallgsxqZNm9i0aRPr16/n3XffZcKECXTq1Imjjz4aaCiEFxUVMXXq1G2ea8eOHendu/cujbellStXApCZmbnbxzaaM2cOl1xyCUOHDuXOO+8kGAxyxhlnUFpa+pP7FBERERERaXFGRET2WlOmTDGA+eSTT8yDDz5oUlNTTV1dnTHGmDPPPNP079/fGGNMu3btzODBg5sc29iuUTgcNgcddJD5zW9+02T7+vXrTVZWljn++ONNKBQyhx12mGnbtq2prKzcYWyTJk0ygJk5c+Z225SVlRnAnH766cYYYyorK43P5zN/+tOfmrS78847jWVZZtWqVcYYY1auXGlcLpe59dZbm7RbtGiRcbvdTbb369fPAOaRRx7Zavx+/fqZfv36xW9Ho1ETCoWatCkvLzetWrUyF154YXzbihUrDGACgYBZs2ZNfPu8efMMYK644ortnnOjDRs2GLfbbR577LH4tj59+phTTjllq7aAsW3bLFmypMn2UaNGmYKCArNp06Ym24cOHWrS09Pj9/Guntf2NObwxz9du3Y13333XZO2119/vfH5fKaioiK+bePGjcbtdpsJEybscJzZs2cbwDzxxBOmpKTErFu3zrz55pumU6dOxrIsM3/+/Hjb4cOHm3bt2m3Vx4QJE8yP374Axuv1mm+++Sa+7fPPPzeAeeCBB3Z6/iIiIiIiIomimbMiIvuIs846i/r6el599VWqq6t59dVXt7ukAUAgEIj/v7y8nMrKSvr27cunn37apF1+fj4PPfQQs2bNom/fvixcuJAnnniCtLS0HcZTXV0NQGpq6nbbNO6rqqoCIC0tjRNPPJHp06djjIm3e/755znqqKNo27YtAC+99BKO43DWWWfFZ3Nu2rSJ/Px8OnfuvNXX9X0+HyNHjtxhvAAulwuv1ws0rOtaVlZGNBqlZ8+eW+UF4NRTT6V169bx20ceeSS9evXa4XIPjZ577jls2+aMM86IbzvnnHN44403KC8v36p9v3796NatW/y2MYYXX3yRk08+GWNMkzwMHDiQysrKeMy7e17b0r59e2bNmsWsWbN44403mDRpEpWVlZx44omUlJTE2w0bNoxQKNRkiYznn3+eaDS61Zq123PhhReSm5tLYWEhgwYNorKykv/7v//jiCOO2KXjt2XAgAF07NgxfvuQQw4hLS2N77777if3KSIiIiIi0tJ0QTARkX1Ebm4uAwYMYNq0adTV1RGLxZpcVOnHXn31VW655RYWLlxIKBSKb//xep0AQ4cO5ZlnnuG1115j9OjR/Pa3v91pPI2F18Yi7bZsq4B79tln8/LLLzN37lz69OnDt99+y4IFC5p8Tf/rr7/GGEPnzp232a/H42lyu3Xr1vHi5M489dRT3HPPPXz55ZdEIpH49g4dOmzVdlvjd+nShenTp+90nGeeeYYjjzyS0tLS+FfrDzvsMMLhMDNmzGD06NFN2v94/JKSEioqKnj00Ud59NFHtznGxo0bf9J5bUtycnKTi5UNGjSIY445hp49e3LHHXdwzz33AHDAAQdwxBFHMHXqVEaNGgU0LGlw1FFH0alTp10aa/z48fTt25eamhpmzpwZL2T/HI2F/S1lZmZusxAuIiIiIiKyt1BxVkRkH3Luuedy0UUXUVxczIknnkhGRsY22/33v//ld7/7Hcceeyx///vfKSgowOPxMGXKFKZNm7ZV+9LSUv73v/8BsHTpUhzH2WmxrGvXrgB88cUXnHrqqdts88UXXwA0mRF68sknk5SUxPTp0+nTpw/Tp0/Htm3OPPPMeBvHcbAsizfeeAOXy7VVvykpKU1ubzlLeEeeeeYZRowYwamnnsrVV19NXl4eLpeL22+/vcnFqH6ur7/+Or6u7rYKvFOnTt2qOPvjc3AcB4Dzzz+f4cOHb3OcQw45BGi582q8wNgHH3zQZPuwYcO4/PLLWbNmDaFQiI8//pgHH3xwl/s9+OCD44XgU089lbq6Oi666CKOOeYYioqKgG1/iAANa+Nuy7YeJ0CTGdoiIiIiIiJ7GxVnRUT2Iaeddhr/7//9Pz7++GOef/757bZ78cUX8fv9vPXWW/h8vvj2KVOmbLP9mDFjqK6u5vbbb+f6669n0qRJXHnllTuM5ZhjjiEjI4Np06bxl7/8ZZvFsaeffhqAIUOGxLclJyczZMgQZsyYwb333svzzz9P3759KSwsjLfp2LEjxhg6dOhAly5ddhjH7njhhRfYb7/9eOmll5oU/yZMmLDN9l9//fVW27766ivat2+/w3GmTp2Kx+Ph//7v/7bKy5w5c5g8eTKrV6/e5mzPRrm5uaSmphKLxZrMaN2W3T2v3RGLxaipqWmybejQoVx55ZU8++yz1NfX4/F4OPvss3/yGHfccQczZ87k1ltv5ZFHHgEaZr3++MJv0HDxOBERERERkV8KrTkrIrIPSUlJ4eGHH+bGG2/k5JNP3m47l8uFZVlNZhmuXLmSl19+eau2L7zwAs8//zx33HEH1113HUOHDuWGG27gq6++2mEsSUlJXHXVVSxfvpy//OUvW+1/7bXXePLJJxk4cCBHHXVUk31nn30269at4/HHH+fzzz/fqrB3+umn43K5uOmmm7aa+WiMiS8TsLsaC6Vb9jlv3jzmzp27zfYvv/wya9eujd+eP38+8+bN48QTT9zhOFOnTqVv376cffbZ/P73v2/yc/XVVwPw7LPP7jTWM844gxdffJHFixdvtX/LdWB397x21ezZs6mpqeHQQw9tsj0nJ4cTTzyRZ555hqlTpzJo0CBycnJ+8jgdO3bkjDPO4Mknn6S4uDi+rbKyMj77GmD9+vXMnDnzJ48jIiIiIiKyt9HMWRGRfcz2vuK+pcGDB3PvvfcyaNAgzj33XDZu3MhDDz1Ep06dmhS7Nm7cyMUXX0z//v0ZO3YsAA8++CCzZ89mxIgRzJkzZ4fLG1x33XV89tlnTJw4kblz53LGGWcQCASYM2cOzzzzDF27duWpp57a6riTTjqJ1NRUrrrqqngRcksdO3bklltu4frrr2flypWceuqppKamsmLFCmbOnMno0aO56qqrdjVlcUOGDOGll17itNNOY/DgwaxYsYJHHnmEbt26bTU7FKBTp04cc8wxXHzxxYRCISZNmkR2djbXXHPNdseYN28e33zzTTyfP9a6dWsOP/xwpk6dyrXXXrvDeO+44w5mz55Nr169uOiii+jWrRtlZWV8+umnvP3225SVlf2k89qWyspKnnnmGQCi0SjLly/n4YcfJhAIcN11123VftiwYfE1j//2t7/t0hg7cvXVVzN9+nQmTZrEHXfcwdChQ7n22ms57bTTuOyyy6irq+Phhx+mS5cuu3yRMxERERERkb2dZs6KiPwC/eY3v+Gf//wnxcXFjBs3jmeffZaJEydy2mmnNWnXWHScMmVK/Ovw2dnZPProo8ydO5e77757h+O4XC6mT5/OlClTiMVi/PWvf+Wyyy5jwYIFTJgwgXnz5tGqVautjvP7/fzud7+jurqa/v37k5eXt1Wb6667jhdffBHbtrnpppu46qqreOWVVzjhhBP43e9+95PyMmLECG677TY+//xzLrvsMt566y2eeeYZevbsuc32w4YN49JLL+XBBx/k1ltv5cADD+Tdd9+loKBgu2NMnToVYIczm08++WQWLVrUpFC+La1atWL+/PmMHDmSl156ibFjx3L//fdTVlbGxIkTf/J5bcuaNWu44IILuOCCC7jwwgt59NFH6devH3PmzKF79+7bPIfMzEzS09N/8v2xpZ49e3Lcccfx8MMPU1lZSXZ2NjNnziQpKYlrrrmGp556ittvv32HeRUREREREdnXWEZXyhAREWli5cqVdOjQgbvuuusnzdD9NYhGoxQWFnLyySfzz3/+M9HhiIiIiIiI7JM0c1ZERER228svv0xJSQnDhg1LdCgiIiIiIiL7LK05KyIiIrts3rx5fPHFF/ztb3/jsMMOo1+/fokOSUREREREZJ+lmbMiIiKyyx5++GEuvvhi8vLyePrppxMdjoiIiIiIyD5Na86KiIiIiIiIiIiIJIBmzoqIiIiIiIiIiIgkgIqzIiIiIiIiIiIiIgmgC4LtAsdxWLduHampqViWlehwRERERERkL2aMobq6msLCQmxb82FERERk+1Sc3QXr1q2jqKgo0WGIiIiIiMg+5Pvvv6dNmzaJDkNERET2YgktzsZiMW688UaeeeYZiouLKSwsZMSIEdxwww3xGarGGCZMmMBjjz1GRUUFRx99NA8//DCdO3eO91NWVsall17Kv//9b2zb5owzzuD+++8nJSUl3uaLL75gzJgxfPLJJ+Tm5nLppZdyzTXX7FKcqampQMObq7S0tGbMwE/jOA4lJSXk5ubqk/gWohy3POW45SnHLU85bnnKcctTjvcM5bnl7U05rqqqoqioKP53hIiIiMj2JLQ4O3HiRB5++GGeeuopDjzwQP73v/8xcuRI0tPTueyyywC48847mTx5Mk899RQdOnTgr3/9KwMHDmTp0qX4/X4AzjvvPNavX8+sWbOIRCKMHDmS0aNHM23aNKDhzdEJJ5zAgAEDeOSRR1i0aBEXXnghGRkZjB49eqdxNhaK09LS9pribDAYJC0tLeFvPH+plOOWpxy3POW45SnHLU85bnnK8Z6hPLe8vTHHWhJNREREdiahxdmPPvqIU045hcGDBwPQvn17nn32WebPnw80zJqdNGkSN9xwA6eccgoATz/9NK1ateLll19m6NChLFu2jDfffJNPPvmEnj17AvDAAw9w0kkncffdd1NYWMjUqVMJh8M88cQTeL1eDjzwQBYuXMi99967S8VZERERERERERERkeaW0OJsnz59ePTRR/nqq6/o0qULn3/+OXPmzOHee+8FYMWKFRQXFzNgwID4Menp6fTq1Yu5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fW5alsXLL7+c6DD2airO7oOyPW728zVcy+3jypoER9OyAl2zsVwWkY11RDY0nSnc9EJg6bvVb1ZBMmk5AWJRh9VLypot3m1xWRbXdsgnx+Pm+2CYp9ZuatHxRERERERk3/Dkk0+SkZHRrH2+9957WJZFRUXFDtsFg0FGjBjBwQcfjNvt5tRTT23WOPaUl156ieOPP57c3FzS0tLo3bs3b7311lbtHnroIdq3b4/f76dXr17Mnz8/vq+srIxLL72U/fffn0AgQNu2bbnsssuorKzcqp8nn3ySQw45BL/fT15eHmPGjGmy/4svvqBv3774/X6Kioq48847txv7c889h2VZW+X+pZde4oQTTiA7OxvLsli4cOFWx3777becdtpp8fM+66yz2LBhw06y1WDlypWMGjWKDh06EAgE6NixIxMmTCAc/uG6Nu+99x6nnHIKBQUFJCcn0717d6ZOnbrb51JTU8PYsWNp06YNgUCAbt268cgjjzRpEwwGGTNmDNnZ2aSkpHDGGWc0OZfPP/+cc845h6KiIgKBAF27duX+++/fpXNtNHXqVA499FCSkpIoKCjgwgsvpLT0h0lgkUiEm2++mY4dO+L3+zn00EN58803m/TxwQcfcPLJJ1NYWLjdguOGDRsYMWIEhYWFJCUlMWjQIL7++uttxmSM4cQTT9xmX6tXr2bw4MEkJSWRl5fH1VdfTTT6y5yctyt5NcYwfvx4CgoKCAQCDBgwYKu8lpWVcd5555GWlkZGRgajRo2ipuaHmtne/Jqn4uw+qmeSF4D5v/B1Z+2AG1+nDADqvmha1Hx384XA2vq9HJgS2K1+Lcui42G5AHz32UaMaZkLgzXK8Lj5U/t8AF7ZWMGaX/DF3EREREREfklisRiO88v79lssFiMQCHDZZZcxYMCAFh0rEom0WN8ffPABxx9/PK+//joLFiygf//+nHzyyXz22WfxNs8//zxXXnklEyZM4NNPP+XQQw9l4MCBbNy4EYB169axbt067r77bhYvXsyTTz7Jm2++yahRo5qMde+99/KXv/yF6667jiVLlvD2228zcODA+P6qqipOOOEE2rVrx4IFC7jrrru48cYbefTRR7eKe+XKlVx11VX07dt3q321tbUcc8wxTJw4cZvnXFtbywknnIBlWbz77rt8+OGHhMNhTj755F16rH755Zc4jsM//vEPlixZwn333ccjjzzCn//853ibjz76iEMOOYQXX3yRL774gpEjRzJs2DBeffXV3TqXK6+8kjfffJNnnnmGZcuWMW7cOMaOHcsrr7wSb3PFFVfw73//mxkzZvD++++zbt06Tj/99Pj+BQsWkJeXxzPPPMOSJUv4y1/+wvXXX8+DDz6403MF+PDDDxk2bBijRo1iyZIlzJgxg/nz53PRRRfF29xwww384x//4IEHHmDp0qX88Y9/5LTTTmvyOKqtreXQQw/loYce2uY4xhhOPfVUvvvuO/71r3/x2Wef0a5dOwYMGEBt7da1m0mTJm3zujmxWIzBgwcTDof56KOPeOqpp3jyyScZP378Lp3vvmZneQW48847mTx5Mo888gjz5s0jOTmZgQMHEgwG423OO+88lixZwqxZs3j11Vf54IMPGD16dHz/nnzN221GdqqystIAprKyMtGhGGOMicVi5uOV35vj539pTl7wlQnFYokOqUWF19eY4smfmg0PfWaiNWFjjDGO45g/Ll5hjv/kS/NScdlP6jdUFzEvTPzEPH/rfLNpTXWTfbFYzKxfv97Emjm3f17+vTn+ky/NjV+vadZ+90UtlWP5gXLc8pTjlqcctzzleM9Qnlve3pTjlvr7ob6+3ixdutTU19fHtzmOY+rD0YT8OI6zy7H369fPjB071lx++eUmIyPD5OXlmUcffdTU1NSYESNGmJSUFNOxY0fz+uuvx4+JRqPmwgsvNO3btzd+v9906dLFTJo0qUk+unXrZi666KL4tm+++cakpKSYf/7zn9uN5Z577jEHHXSQSUpKMm3atDEXX3yxqa7+4e+BKVOmmPT0dPOvf/3LdO3a1bhcLrNixQoTDAbNn/70J1NYWGiSkpLMkUceaWbPnh0/btOmTWbo0KGmsLDQBAIBc9BBB5lp06ZtN47Zs2cboMnPhAkTjDFmp2OtXLnSDBkyxGRkZJikpCTTrVs389prr5kVK1Zs1efw4cN3ev8MHz7cnHLKKTtt19i2Mc5taYzhueeeM8cee6zx+XxmypQpZsKECebQQw9t0va+++4z7dq12yqOu+66y+Tn55usrCxzySWXmHA4vEuxNerWrZu56aab4rePPPJIM2bMmPjtWCxmCgsLze23377dPqZPn268Xq+JRCLGGGPKyspMIBAwb7/99naP+fvf/24yMzNNKBSKb7v2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IrIv+fDDD+nTpw+XXHIJhx12GJ06dYrP4NrShRdeyMEHH8xTTz3Ftddey7Jly7bb54IFC3Ach3vuuYejjjqKLl26sG7dup3GcthhhxGLxdi4cSOdOnVq8tP4h/+HH37IKaecwvnnn8+hhx7Kfvvtx1dffbXDfr1eL7FYbLfHAigqKuKPf/wjL730En/605/iXy1vXO/0x/0mWm5uLsXFxU0KtAsXLmyWvp999llGjhzJs88+Gy8CNvJ6vfTo0aPJ0giO4/DOO+80mdVXVVXFCSecgNfr5ZVXXtmq2HT00UcDxNcHBigrK2PTpk20a9cOaJgl+MEHHzQpOs+aNYv999+fzMxMDjjgABYtWsTChQvjP7/73e/o378/CxcujK9duztycnLIyMjg3XffZePGjfzud7/bpePWrl3LcccdR48ePZgyZco2Z9y+9957DB48mIkTJ261hMCunEskEiESiWzVt8vlihdye/TogcfjaXL/LF++nNWrVze5f5YsWUL//v0ZPnx4k5mbu6Kurm6bMQBbfWDg9/tp3bo10WiUF198cbtLD+xMeno6ubm5fP311/zvf/+L93PdddfxxRdfNMkbwH333RdftqR3794sWrSoSbFx1qxZpKWlNflw4KdIS0vj7LPP5rHHHuP555/nxRdfpKysjMMPP5zi4mLcbvdWrzuNM6MPP/xwli9fvtX+Tp06Yds2Xbt25fvvv2+yhMPHH3/8s+IF6NChA/n5+U0eI1VVVcybNy/+GOnduzcVFRUsWLAg3ubdd9/FcRx69er1s2NoaZo5u4/rlZHCZ9V1zKuo4fRWmYkOp0XZSR6+7JjMBqeG5PoY/bN+2oXAfszrd1PULYsVn2/i209LyGmT2iz97kiGx80Z+Zn837pSnly3iaMzU7A1e1ZEREREJK5z5848/fTTvPXWW3To0IH/+7//45NPPqFDhw7xNg899BBz587liy++oKioiNdee43zzjuPjz/+uMlFmRp16tSJSCTCAw88wMknn8yHH37II488stNYunTpwnnnncewYcPiF7kqKSnhnXfe4ZBDDmHw4MF07tyZF154gY8++ojMzEzuvfdeNmzYsMNiSvv27ampqeGdd97h0EMPJSkpaZfGGjduHCeeeCJdunShvLyc2bNnxy/U1K5dOyzL4tVXX+Wkk04iEAjEZ9z+2NKlSwmHw5SVlVFdXR0vFP146YjmcNxxx1FSUsKdd97J73//e958803eeOMN0tJ+3t9106ZNY/jw4dx///306tUrvr5kIBCIr7d75ZVXMnz4cHr27MmRRx7JpEmTqK2tja+f2liYraur45lnnqGqqoqqqiqgoajscrno0qULp5xyCpdffjmPPvooaWlpXH/99RxwwAH0798fgHPPPZebbrqJUaNGce2117J48WLuv//++MWv/H4/Bx10UJP4G2clbrm9rKyM1atXxz84aCwIN65NDDBlyhS6du1Kbm4uc+fO5fLLL+eKK65g//3332nOGguz7dq14+6776akpCS+r7H/2bNnM2TIEC6//HLOOOOMeF69Xi9ZWVm7dC5er5d+/fpx9dVXEwgEaNeuHe+//z5PP/009957L9BQxBw1ahRXXnklWVlZpKWlcemll9K7d+/4xcAWL17Mb37zGwYOHMiVV14Zj8XlcpGbm7vT8z355JO56KKLePjhh+PLGowbN44jjzwy/hX8efPmsXbtWrp3787atWu58cYbcRyHa665Jt5PTU0N33zzTfz2ihUrWLhwIVlZWbRt2xaAGTNmkJubS9u2bVm0aBGXX345p556anz5gC3vwy21bds2/tp2wgkn0K1bNy644ALuvPNOiouLueGGGxgzZkyTi8DtrnvvvZeCggIOO+wwbNtmxowZ5Ofnk5GRwYABA+jduzennnoqd955Z/yDq9dee43TTjuNnj17Mn78eIYMGULbtm35/e9/j23bfP755yxevJhbbrmFAQMG0KVLF4YPH85dd91FVVUVf/nLX3Ya187yalkW48aN45ZbbqFz58506NCBv/71rxQWFnLqqacC0LVrVwYNGsRFF13EI488QiQSYezYsQwdOrTJMgt78jVvtxjZqcrKSgOYysrKRIdijDEmFouZ9evXm1gsZr6vD5njP/nSnPi/5aY2Gkt0aC3u6v99a/q/9qm58/mFxok03/mWrq0xz98637ww8RMTqo80yXFLqYlGzemffm2O/+RL8+6mveOxtSftiRz/2inHLU85bnnKcctTjvcM5bnl7U05bqm/H+rr683SpUtNfX19s/a7J/Tr189cfvnlTba1a9fO3HfffU22AWbmzJnGGGOCwaAZMWKESU9PNxkZGebiiy821113nTn00EONMcYsW7bMBAIBM23atPjx5eXlpqio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0ISG5/UhhxyC3+8nLy8vPgFxd85l6tSpHHrooSQlJVFQUMCFF15IaWnpLp/zvuSll17ihBNOIDs7e7uF3F3J/erVqxk8eDBJSUnk5eVx9dVXE43+8E3o3X1M70kJXwxpyJAhLFq0iGAwyLJly7joooua7Lcsi5tvvpni4mKCwSBvv/02Xbp0adImKyuLadOmUV1dTWVlJU888QQpKSlN2hxyyCH897//JRgMsmbNGq699toWP7dEOCItCQv4tj5ESTiy0/Z7k5gxPLi6Yf3gE3PS2T955xdS8LROAQtiFSFiNeGdtt8drTqlABYl39dQWxFq1r53ZkhuOrkeD5siUf69sWKPji0iIiIiIj+IxWI4v8AJEx999BGHHHIIL774Il988QUjR45k2LBhvPrqq806jjGmSYGkub333nucc845zJ49m7lz51JUVMQJJ5zA2rVr423uvPNOJk+ezCOPPMK8efNITk5m4MCBBIMNywF++eWXOI7DP/7xD5YsWcJ9993HI488wp///OcmY11++eU8/vjj3H333Xz55Ze88sorHHnkkfH9K1asYPDgwfTv35+FCxcybtw4/vCHP2yzAPTJJ5/wj3/8g0MOOWSrfXV1dQwaNGir8RutW7eOAQMG0KlTJ+bNm8ebb77JkiVLGDFixC7lbMGCBeTl5fHMM8+wZMkS/vKXv3D99dfz4IMPxtt88MEHHH/88bz++ussWLCA/v37c/LJJ/PZZ5/t1rkMGzaM5cuXx78Nffrpp3PWWWc16ee8885jyZIlzJo1i1dffZUPPvigyWS6N954g/POO48//vGPLF68mL///e/cd999TeLdkeTkZMaOHcsHH3zAsmXLuOGGG7jhhhuaTOpr06YNd9xxBwsWLOB///sfv/nNbzjllFNYsmRJvM0VV1zBv//9b2bMmMH777/PunXrOP3005uMde+99/KXv/yF6667jiVLlvD2228zcODA3TqXDz/8kGHDhsW//T1jxgzmz5+/Vb3sl6K2tpZjjjmGiRMnbrfNznIfi8UYPHgw4XCYjz76iKeeeoonn3yS8ePHx9vszmN6jzOyU5WVlQYwlZWViQ7FGGNMLBYz69evN7FYbJv7L1+6yhz/yZfmtY3lezawn2lmcZk5/pMvzemffm0qwpFdPq70uS9N8eRPTd2y0maLpTHHs59ZZp6/db5Z8t+1zdb3rnpjY4U5/pMvze8/+9rURrd9X+/LdvY4lp9POW55ynHLU45bnnK8ZyjPLW9vynFL/f1QX19vli5daurr63/Y6DjGhOsS8+M4uxx7v379zNixY83ll19uMjIyTF5ennn00UdNTU2NGTFihElJSTEdO3Y0r7/+evyYaDRqLrzwQtO+fXvj9/tNly5dzKRJk5rko1u3buaiiy6Kb/vmm29MSkqK+ec//7ndWO655x5z0EEHmaSkJNOmTRtz8cUXm+rq6vj+KVOmmPT0dPOvf/3LdO3a1bhcLrNixQoTDAbNn/70J1NYWGiSkpLMkUceaWbPnh0/btOmTWbo0KGmsLDQBAIBc9BBB5lp06ZtN47Zs2cboMnPhAkTjDFmp2OtXLnSDBkyxGRkZJikpCTTrVs389prr5kVK1Zs1efw4cN34R5qcNJJJ5mRI0fusE2/fv3MlClTdnper7/+ujn88MONx+Mxs2fPNsOHDzennHJKk7aXX3656devX5O+L730UnP11VebzMxM06pVq3hOdlU0GjWpqanmqaeeMsYY4ziOyc/PN3fddVe8TUVFhfH5fObZZ5/dbj933nmn6dChQ/z20qVLjdvtNl9++eV2j7nmmmvMgQce2GTb2WefbQYOHNhkW3V1tencubOZNWuW6devn7n88su32V9jLsvLy5ts/8c//mHy8vKavN598cUXBjBff/31duPbkUsuucT0799/h226detmbrrppt06l+TkZPP000832ZaVlWUee+wxY0xDXgHzySefxPe/8cYbxrIss3Ztw9/h55xzjvn973/fpI/JkyebNm3aGGc3Xoe2dNppp5nzzz9/h20yMzPN448/boxpeMx4PB4zY8aM+P5ly5YZwMydO9cYY0xZWZkJBALm7bff3m6fu3Iud911l9lvv/22atO6desdxruz52ZZWZk599xzTU5OjvH7/aZTp07miSeeiO9fvXq1OfPMM016errJzMw0v/vd78yKFSua9PHYY4+ZAw44wPh8PrP//vubhx56qMn+efPmme7duxufz2d69OhhXnrpJQOYzz77bIexG2Pir18/brsruX/99deNbdumuLg43ubhhx82aWlpJhQKbXfMbT2md8c2fy//BAmfOSvN78jNSxvM24fWnS2PRHly80XALmyTQ7rHvcvHeos2rzvbzEsbALQ9qOHiXKsW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watUKvr27cuOHTuIj49n+/btpKen06FDh9vefd63vjP3DwjhwPp4Yo+kozM54tXbq4Ysl7iRMuNYosapjo/DtGrCAjx52s+dfTmFbLyay+mCYvZlF7AvuwAfjZKH3J15yN2JILvb35TvXkEax7ZH8nHtIPnZ9tQlH9emDWazjiNHn6i19q6nbZvVKBR2N8/4N9988w1Tp07l0KFDrF69mnHjxrFu3ToGDRrEf//7X+bNm8eIESNISEjA3t4es9lMYGAga9euxcPDg/379/P888/j5+fHkCFDsLOz44cffqB9+/b069eP/v3789RTT9GzZ09Gjx5doR1yuZwFCxYQGhpKXFwc48ePZ+rUqXz++eeWPEVFRXzwwQd89dVXeHh44O3tzcSJEzl79iyrVq3C39+fdevW0adPH06dOkVERAQlJSW0bduWadOm4ezszMaNGxkxYgRhYWHcf//9Zezo2LEj8+fP56233rKE93N0dAS4aVsTJkxAr9eze/duHBwcOHv2LI6OjgQFBfHTTz8xePBgoqOjcXZ2RqvVlusHnU6Hvb291TGtVktiYiKXL18mJCSkyue2PF577TXmzp1L69atsbOz44svvqhSuR07duDn58eOHTuIjY3liSeeoFWrVjz33HNVKm82m8nPz7foCnq9niNHjjB9+nRLHrlcTo8ePYiKiqqwntzcXJydnVEqS2WTrVu3YjabSUpKonHjxuTn59OxY0fmzp1LUFAQAFFRUXTp0sVqg+XevXvzwQcfkJ2djZubGwDvvvsu3t7ePPvss+zZs6dK/boenU6HTCZDo9FYjtnZ2SGXy9m7d28Z/aMq5ObmWnxWWZ7GjRtbHSsoKCA4OBiz2UybNm2YNWsWTZs2BUpXM6amplrZ4+LiQvv27YmKimLo0KFERUXh6upKu3btLHl69OiBXC7n4MGDDBo0CIDt27ezdu1ajh8/zs8//1ytvv3yyy9ERkYyYcIENmzYgJeXF08++STTpk1DoVCUyW8ymVi7di2FhYVERkZapf3www98//33+Pr6MmDAAN58803L96hhw4Z4eHiwdOlS/vvf/2IymVi6dCmNGze2+j5Vty9Lly5l6NChODg4VKvfNzJ8+HBat27NokWLUCgUHD9+HJWqVEO6ePEiffr04f333+frr7/m6tWrTJw4kYkTJ7Js2TLg5vPSwYMHefbZ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q6tl9/fc3FzRvn170bx5cxEbG2tVj9FotNQzcOBA0bRpU7Fv3z5x6tQp0b9/f9GkSROh1+uFEELk5OQIHx8fMWLECHH69GmxatUqYW9vL7744otK/XljnzMzM8WxY8fExo0bBSBWrVoljh07JlJSUix5vv76axEVFSViY2PFd999J9zd3cVLL71UYTvXk5iYKMLDw0X37t1FYmKiVX+vsX37dmFvby+mT59ulZ6ZmWnJ884774g//vhDXLx4URw5ckQMHTpU2NnZiTNnzljyzJkzR7i6uooNGzaIkydPioEDB4rQ0FCreaxPnz6idevW4uDBg2Lv3r0iIiJCDBs2rEL7K/qOVkRCQoJwcnISEydOFNHR0eK3334T3t7e4v3337fkee2118SuXbtEfHy8OHnypHjttdeETCYTW7ZsEUIIERsbK959913x119/ifj4eLFhwwZRv3590aVLF0sd586dExqNRowbN06cPXtWnD59Wjz11FPCxcVFJCcnV7svnTt3Fk888USV+wmI+Pj4ctOKiorEhAkTxI4dO8SlS5fE3r17RVhYmJg6daoQQogTJ04IrVYrJkyYII4dOyZiYmLE+vXrxYQJEyx13GxeioqKEnK5XHz00UciJiZG/O9//xOurq43PVeXL18Wx44dE++8845wdHQUx44dE8eOHbPMXTWl+23evFn8/vvvIi4uTmzZskW0bNlStG/f3vL9vRVq6nf5joqzQLmfZcuWWfIUFxeL8ePHCzc3N2Fvby8GDRpkNWEIIcSlS5dE3759hVarFZ6enuLll18WBoPBKs+OHTtEq1athFqtFvXr17dq42bcbeKsEELEZseKMX+MEUN+HSImbpsokvPLnwhu5NzenWL51BfEh5OniEfm/Sn6L9gj3vv1jMgrrniwGrKyRML4CSLuscEi8cUXhbGCH/+7iUp9rCsQYmkfIRZ3EemnF4iDhx4Rhw4/JgoL42rNPrPRJDJXnRepC46K7I21164QQpjNZnH+/HmxdOlSsXjxYrF06VJx7ty5SkX88rjex4W5OvHbZyfE6pmHxC8Ljou8zLvvhqMuUpduUu9V7oSPs/QGsTolU4w+FWcRaXsePi8GH70gPr+cJs7mF1X7+1iXkcax7ZF8XDtIfrY9dcnHkjhbllsRZ0tKSsQzzzwjXFxchKurqxg3bpx47bXXLOLsuXPn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iROFXq8X/v7+4plnnhEmk8kJV+R67rnnHhESEiI0Go0ICwsT99xzj8jOzrZur6mpEY8//rjw8fERBoNB3HbbbSI3N9fmGIxv63766ScBQGRlZdmUsw93zObNm5u8N0yfPl0IIYQsy+KFF14QQUFBQqvVijFjxjSKfVFRkbjvvvuEu7u78PT0FDNnzhQVFRU2dQ4dOiRGjhwptFqtCAsLE0uWLOmsS3S6lmKck5PT7P158+bNQggh0tLSRFJSkvDy8hI6nU7069dP/PWvf7VJLArBGDcX4+rqajFu3DgREBAg1Gq1iIqKEo8++mijX+yyH7eutfuFEEK8//77Qq/Xi9LS0kb7sy+3rLWxmhD2G0ts3rxZDBo0SGg0GhETE2NzDiIiIqLOJAkhhIMm5RIRERERERERERFRM7jmLBEREREREREREZETMDlLRERERERERERE5ARMzhIRERERERERERE5AZOzRERERERERERERE7A5CwRERERERERERGREzA5S0REREREREREROQETM4SEREREREREREROQGTs0REREREREREREROwOQsERFRJ5MkCatXr3Z2M4iIiIiIiMjJmJwlIqJuZcaMGZAkqdHXhAkTnN00IiIiIiIi6mZUzm4AERFRZ5swYQI+/vhjmzKtVuuk1hAREREREVF3xZmzRETU7Wi1WgQHB9t8+fj4AKhfcmD58uWYOHEi9Ho9YmJi8J///Mdm/8OHD2P06NHQ6/Xw8/PDrFmzUFlZaVPno48+woABA6DVahESEoK5c+fabL98+TJuu+02GAwG9O7dG999951jL5qIiIiIiIhcDpOzRERE13jhhRdwxx134NChQ0hJScG9996LzMxMAEBVVRXGjx8PHx8f7Nu3D6tWrcKGDRtskq/Lly/HnDlzMGvWLBw+fBjfffcdevXqZXOOl156CXfffTcyMjJwyy23ICUlBcXFxZ16nURERERERORckhBCOLsRREREnWXGjBlYuXIldDqdTfnzzz+P559/HpIkYfbs2Vi+fLl123XXXYfExES8++67+OCDD7BgwQKcP38ebm5uAIAff/wRU6ZMwaVLlxAUFISwsDDMnDkTr7zySpNtkCQJf/rTn/DnP/8ZQH3C193dHWvXruXat0RERERERN0I15wlIqJu5+abb7ZJvgKAr6+v9XVycrLNtuTkZKSnpwMAMjMzkZCQYE3MAsCIESMgyzKysrIgSRIuXbqEMWPGtNiG+Ph462s3Nzd4enqioKCgo5dEREREREREXRCTs0RE1O24ubk1WmbAXvR6fZvqqdVqm+8lSYIsy45oEhEREREREbkorjlLRER0jd27dzf6vl+/fgCAfv364dChQ6iqqrJu37lzJxQKBWJjY+Hh4YEePXpg48aNndpmIiIiIiIi6no4c5aIiLqduro65OXl2ZSpVCr4+/sDAFatWoWhQ4di5MiR+Oyzz7B37158+OGHAICUlBQsWrQI06dPx+LFi1FYWIh58+bhgQceQFBQEABg8eLFmD17NgIDAzFx4kRUVFRg586dmDdvXudeKBEREREREbk0JmeJiKjbWbduHUJCQmzKYmNjcfz4cQDASy+9hC+++AKPP/44QkJC8Pnnn6N///4AAIPBgJ9++glPPPEEhg0bBoPBgDvuuANvvPGG9VjTp09HbW0tli1bhvnz58Pf3x933nln510gERERERERdQmSEEI4uxFERESuQpIkfPPNN5g2bZqzm0JERERERES/cVxzloiIiIiIiIiIiMgJmJwlIiIiIiIiIiIicgKuOUtERHQVrvZDREREREREnYUzZ4mIiIiIiIiIiIicgMlZIiIiIiIiIiIiIidgcpaIiIiIiIiIiIjICZicJSIiIiIiIiIiInICJmeJiIiIiIiIiIiInIDJWSIiIiIiIiIiIiInYHKWiIiIiIiIiIiIyAmYnCUiIiIiIiIiIiJygv8PcfgnCJChNWYAAAAASUVORK5CYII=", + "image/png": "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p5WiFV9RuWw5li4KzF3PH6NKm5PNNSqOGGpQKHToVL4MCB3AHe3uQKO6hqksJP6RNLZHRCX+WUj+I9EQJP+RaAiNzX/+zhQHdquDH+fs+0v7qC+3PNURpfryixGPHz+e+fPne5RlZmYSFxfHpk2bePrppzl48CCBgYGMGzeOV155BaVSedH9oqOjeeCBB1i/fj0FBQXExMTw8MMP8+ijj3r0ebEUBxs3bqRfv34eZTNnzmTWrFlYLBZeeOEFFi9eTEVFBW3atOGNN96gb9++AGRnZzNlyhS2bt2K1WolLi6Ot956i1atWhEfH+/R5rhx4+odbTh8+HDCwsL46quvLlrnco9RnxvXqlWrePHFFzl8+DBr1qxh3rx5tebiscce48CBA2zcuNHddrt27fDy8uK///0varWaSZMmMWvWrHrZDy6hJiAggA8//JB77rkHIQSRkZE8+eSTPPXUUwBUVlYSFhbGvHnz+Ne//lVnO2+99RaffPIJp06dAuDo0aO0a9eO1NRUWrRoUec+06ZNY+XKlR4C5L/+9S8qKir47bff3GUGg4GOHTvy8ccf88orr5CcnMy777570TEtXbqUu+66i5qaGpRKJb/++isjRowgLy+PsLAwAD799FOmTZtGcXExarX6knNUXzvPIZPJWLZsmUfka13s2bOHrl27kp2dTUxMDHa7nbi4OF566SUmTpx4yX0vZPLkyRw9epT169f/KXsvxcXG0qZNG+644w6mT5/uLuvUqRPDhg3jlVdeAaB79+4MGjSIf//735ftZ968eTz22GO1Itn37t1Lly5dyMnJcS9GfvjwYdq1a8fx48dJTEys1dbBgwdJTk5m8+bN9O7d+6J9Xu7cLC8vZ8qUKaxZswaDwUBUVBTPP/889957LwCnT5/mySefZM2aNcjlcnr37s17771HXFycu43//ve/vP322+5r5yOPPMLDDz/s3r57924efPBBjh49Sps2bXjhhRe45ZZb6pXi4GLpECorKwkJCWHRokXcdtttABw7doykpCR27NhB9+7d//Q50bp1a+644w5mzJhxSdv+KqQUBxJXHdmFd4xOnMB68hTeqdk80+lJZvSYQYuQFpQFlbHLexePbHiEb9K+ocbbwm5HOgfjCnC29kamlmMvM1O1PoeS+Ueo2VOA01z/RzT+EnwjoN9zMGDmeXHWYYcNs2HF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/4vP5wuVMXDgQCA4LPizzz7jxhtv5NFHH6WoqAhVVdu4OHjnnXd47rnn2LFjB1FRUYwbN45nn302JA4sWbKEsWPHhoJR5+XlMWjQIF5//XX69evX7vFlZ2dTVFQUWs7KygqJMP/973958MEH2bp1K2lpaUyZMoW7774bnU6HEIIHH3yQN998k4qKCuLj47nooot4/vnnGTNmDD/++GPYfvb3E3/Dhg2cddZZrFmzhtTU1ANa0HbGxUF2djbXXHMNO3fu5LPPPuOCCy5g6tSpjB07NsxabcOGDQwePJiCggKys7OZO3cuM2bM4IMPPmDGjBns2bOHUaNGMWfOHFJTUzvc375Mnz6dbdu2sWjRIgBmzpzJggULQpaPAJdddhn19fUsXLiw3TKqqqpISkrixx9/5NRTTwVg2LBhnHbaaTz88MPtbrNt2zb69OnD6tWrOfHE4JefhQsXcsYZZ7B3794wi9CZM2dSWlrK+PHjmTFjRpgF7b4oikJsbCwvvvgiV155JUII0tLS+Nvf/sbtt98OgMPhIDk5mblz53LZZZft9/wcTD0Bpk6dSn19fRsL2vbo27cvl156Kffddx8Af//73/npp59YtmzZAbdtZvXq1Zx88skUFRWRmZl50PXdl48//pjLL78cn88X6uu/+OILzj33XHw+H3q9noULF3LZZZexe/fusBGk+2Pf6wLBdqXX63nnnXf2u+3+7ru6ujrS09P54osvGD9+fKfqAgd2cbC/fgOC/e3dd9/Nf/7zH+rr6+nXrx+zZs1izJgxoTKWL1/OXXfdxZo1a0hISOD888/n8ccfD33EqKys5JprruH7778nJSWFRx55hLvvvrvTFv0dWf8PHTqUk046iRdffBEI/n7IyMjgpptu4u9//zsOh4PExETee+89LrroIgC2b99O7969WblyJcOGDQuV9dJLL/HBBx9w3333MX78+P1a0EZcHLTDunXruPPOO1m+fDkjR45k6NChnH/++ZjNZmpra9m8eTN33303N910E3feeSczZsz4XYTaCBFaEzViBIG9JZgHDTpkcRagq70r9w67l7UVa3l327uUNpYyZ/Mcviv8jql9p9I/sf9hqHUH1BXCj09CUh8YPj3kr7Bv377k5OSE+WOtq6vDbDa332G1/rFT9iv8OAv6XQh9z2/jA7E9YiwG/jQ0kz8NzaSiwcva/BpWrS3l1731OL0yP22pYEVeFZooPVqjluz4KHqmRNMt0UpOQhSZcRbMB2m5qdVI9E610TvVxqUnQUBRya90sbnEwbaYiVTn/UqlNRej6mP9hgrmrylG6Az01FYQr/PTt/8AhvXvToL10Pug1uJsoLIS5w+LQAhMfXpj2me41dHGHK0nqVsi3Ycko8gqVcVOyvIdlObX01jfEnhsw3d7iI43kdrNTlr3GBK6WNEcR5HnpVZt2p6UzBk33Y6zpjokzgLkrfqJ2pI9DJx4Bl0HB12g/Fb3J8ciOo2ErpUYlmo08GrfbKr8ctgxFrp91AcU9K3Savwyj+wupZvZyPTMpGPmnATdpkhBw8OjXZmjQLuCbZhg3CJMt+Sh7XwoT3OZIqSKhcpqVvtaibLtLashK+tW9WstdDftUxUCt9MVfC61KHDhZUK4uC1a5kVz3pBAvE+e0PrweoTyNtWj6US2HG9rKbazOrAI+/ebMra77QEKbLP6wAkdFtRpyfuAdRL7Jhw6HVySgOX4eQYdCT766CMALrjggtC73LZt2/j111/p1q0bQ4cODeX95JNPUBSFc845JzSseOfOnaxbt65NzILPP/8cn8/HGWecEfrhW1BQQG5u7kHV784772T+/Pm89dZbZGVl8eSTTzJp0iTy8/OJi4vj8ssv57333gsTaN99911GjhwZGgl28cUXYzab+frrr7Hb7bzyyiuMHz+evLy8kBCTn5/P/Pnz+eSTTzoUkQOBAA8//DA9e/aksrKS2267jalTp/LVV1+F5bvjjjt47rnnSElJ4R//+Adnn302eXl56PX6NmWuXr2apKQk5syZw+TJk0P7XrZsGVdeeSXPP/88p5xyCrt27eK6664D4P7772f+/Pn885//5P3336dv376Ul5ezcePG0HUaOHAg1113Hddee+1+z6/b7eZPf/oT//rXv0hJSdlv3oPl6aef5r777uP+++8HYM+ePZ3azu128/TTT/POO++g0Wj485//zO233867777b6X07HI4wkW3lypVM2Ceg86RJk/YrGDkcDoBQOZWVlaxatYorrriCESNGsGvXLnr16sWjjz7KqFGjQvuJiYkJiYgAEyZMQKPRsGrVKs4//3wAFi1axEcffcSGDRv45JNPDng8brebQCAQqktBQQHl5eVhx2S32xk6dCgrV648oEDb2XoeLKqq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S4Cnpyfjx49nxIgRdOvWzRW40s/PT1LQSmCzWLBZLAjxz8tRh92OzWKpsaOl/rzWBuW9GjhTsXctc88995CSksIff/xBYmIit9xyC7fddhuxsbEXtZ1LOaaHDx/G4XDw5ZdfcvDgQT766CO++OILXn75ZVee8vJyRowYQVRUFPv37+f9999nxowZfPXVV648mzdv5o477mDTpk3ExMQQERHBiBEjyMrKcuVJTU2lf//+tGnThs2bN5OQkMBrr72GVvtPsMunnnqKP//8k8WLF7Nlyxays7O55ZZbapV9ypQpdOrUqUb61q1bGT58OKtWrWL//v0MHjyYm266ye13+eWXX3j66aeZPn06Bw4coHPnzowcOZL8/PwGjVtD5bzvvvu4/fbba61j586ddOrUiSVLlpCQkMC9997LPffcw4oVK1x5LBYLw4cPJz09nd9++42UlBS+/vprmjRp4soTHh7OrFmz2L9/P/v27WPIkCGMGzeOgwcP1mhzzpw55xzLxG63M2bMGCwWCzt37uT7779n/vz5vP766275brvtNv766y++/fZbUlJSWLhwIa1btz6nvsDfboZyclyf7du3ux3v3r078+bN49ChQ6xduxYhBCNGjHDtbKmsrGTUqFFERkaye/dutm/fjpeXFyNHjsRqdV9rrwWMRiPNmjVj1qxZhISE1JqnIfP9bHP6qhxXIXFWysrKBCDKysoaWxQhhBB2u13k5OQIu93e2KJIXKVcrjlkLSoSlTExourAgUvazpVEWVmZyM3NFRUVFY0tyiVDWoMkLoSLNX/sJpNw2GwXSSqJqwVp/Tk/Th8vq9UqHA5HI0rTeFxp8+dSPmNUV1eL5ORkUV1d7Za+dNYMsXTWDGGqqnSlHd65VSydNUPsX/WHW97lH7wtls6aIapKS1xpR/fEiKWzZog9fyxxy7vi4/fE0lkzRFlBnistLXbfOcttMpnEY489JgIDA4VGoxH9+vUTe/bsEUI4f78mTZqIzz77zK3MgQMHhEwmE+np6UIIIUpKSsSUKVNEQECA8PLyEoMHDxZxcXGu/NOnTxedO3cWX3/9tYiOjhYymUwIIcTAgQPFE0884cr3ww8/iO7duwtPT08RHBws7rjjDpGX90//Nm3aJACxYsUK0bFjR6HRaESvXr1EYmJinf2LiooSgOsTFRXlOrZs2TLRtWtXodFo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/cflcpGTk0NNTQ2JiYkHdd8+n4+CggLy8/NjgknBYBAAk8mEpmlA5B9dXdcxGAwYjcY2ratpGiaTaZ/rNt1fW/j9fm644QbmzJmDy+Vi6NChPProoxx99NHouk5ubi633HILV1xxRXSb5cuXM2TIEAoKCsjLy6Ompoa///3vvPfee/j9/ug+BgwYAMAdd9zBvHnzuOqqq7jnnnvYsWMHuq4zduxYBg4cGM1Efe2113j88cfZuHEjTqeT3/3udzz22GNkZGQAkQDf8ccfz4cffsjNN9/Mpk2bGDhwIDNmzOCoo45q8fy6du3Kjh07oq/z8vLYvn07AO+99x7Tp09n3bp1ZGdnM2XKFG655RZMJhNKKaZPn85LL73E7t27SU1N5ZxzzuGJJ55g7NixfPHFFzHHaelf/E8//ZRJkyZRXV0d/Z+2traW5ORkPv30U8aPH99imxctWsTUqVOj7WzJ2LFjOeqoozCZTPznP/+hX79+vPzyy+Tn57N8+fJoZmJNTQ3JycksXLiQsWPHRq/hZ599xo033si6desYOHAgL7/8Mr179271eHt66KGHePbZZ9m2bRsQCczccsstlJaWYrFYALjpppuYN28eGzZsaHEf4XCY5ORknnrqKS666CIAzj//fMxmM6+99lqL29TW1pKens7s2bM555xzgEgAuU+fPixdupRjjjkmuu6zzz7LG2+8we233864ceOorq4mKSmp1XPq27cv5513XjTgNHz4cI4++mieeuopIPJ5lpOTw9VXX81NN9201+uzP+2En94jbblN/eSTTyYzM5OXXnoJgOeee46HHnqIDRs2YDabW93O7XYzePBgnnnmGe6+++6Y9x7Q7P14oJ544gkeeughdu7cGTP//PPPp2fPnhiNxmbn3JZrHhcXx7PPPsuFF14Y3S41NZUHHniAP//5z0DkfX/ttde2WkJl+/btzd4rbTF27FimTp3K1KlTW1xeXV3NVVddxaefforb7aZLly7885//5OKLLwZg586dXH/99Xz66acYDAaOPfZYHn/88ZiSJjNmzOCRRx6hoKCArl27cs011/DXv/41uvy7777jL3/5C+vXr+eoo47illtu4ayzzmrTubR23m3pr//973855ZRTKC4uJjMzE4j0vRtvvJHy8nIsFgsjR45k1KhRPPTQQ9F9X3/99Xz77bd8/fXXLbaptd+dvxol9mnnzp0KkEkmmWSSSSaZZJJJJplkOqjTzp07D/r/L16vV61bt055vd6Y+bNmzVKzZs2Kmb969Wo1a9Ys9c0338SsO2fOHDVr1ixVV1cXnbd+/Xo1a9Ys9fXXX8es+9Zbb6lZs2ap6urq6LzNmzfvd7uvueYalZ2drT7++GO1du1aNWXKFJWcnKwqKyuVUkr9/e9/V6NHj47Z5vrrr4+ZN378eHXqqaeq77//Xm3atEldf/31KjU1NbqPadOmKafTqU488UT1448/qpUrVyqllBozZoz629/+Ft3Pv//9b/Xxxx+rrVu3qqVLl6oRI0aoSZMmRZcvXLhQAapPnz7q008/VatWrVKnnHKK6tq1qwoEAi2eX1lZmQLUyy+/rEpKSlRZWZlSSqkvv/xSJSQkqJkzZ6qtW7eqTz/9VHXt2lXdcccdSiml5s6dqxISEtTHH3+sduzYob799lv1wgsvKKWUqqysVF26dFF33nmnKikpUSUlJS0e+/3331dGo1H5fL7oPJ/Pp4xGo5o2bVqrP5OFCxeqvLy8Vpc3Xru4uDh1ww03qA0bNqgNGzaogoICBajly5dH16uurlaAWrhwYcw1HD58uFq0aJFau3atOvbYY9XIkSP3erw93XLLLWrIkCHR1xdeeKE6/fTTY9ZZsGCBAlRVVVWL+3C5XMpms6kPPvhAKaVUOBxWcXFx6s4771QTJkxQ6enpatiwYerdd9+NbvP5558rIKbfK6VUbm6u+te//hV9vXbtWpWVlaV27NgRPec9t2kqHA6rnJwc9eSTTyqllPL7/cpoNMYcWymlLrroInXaaae1up/9bWejadOmqQEDBuxzv0opNWrUKHX99ddHX0+aNElNnjxZXXrppSojI0P17dtX3XPPPSoUCjVr+7XXXquUav7ea5yXlpamUlNTVd++fdVNN92k6uvr29SmPRUVFakxY8aoyZMnx8x/6aWX1NFHH62CwWCzc27rNT/hhBPUySefrCorK1U4HFavv/66cjgcMZ9/eXl5KjMzU6WkpKiBAweqBx98UAWDwejyxvdKTk6OSk9PV6NGjVLvvffePs9rzJgx6uWXX251+ZVXXqkGDhyovv/+e1VQUKDmz5+v3n//faWUUoFAQPXp00f96U9/UqtWrVLr1q1TF1xwgerdu7fy+/1KKaX+85//qE6dOqm3335bbdu2Tb399tsqJSVFzZw5UymlVF1dnUpPT1cXXHCBWrNmjfrggw9Ut27dmr3vW9PSZ4RSbeuvt912W7M+um3bNgWoH3/8USml1ODBg9Wtt94as84tt9yizGZzq5/Rrf3u/LX89LWnaFV2djY7d+4kPj4++o1we2r8tr2jZPSKQ4/0IXEgpP+IAyH9RxwI6T/iQHS0/qOUoq6ujuzs7PZuSodQX1/Ps88+y8yZM5k0aRIQqRM6f/58/v3vf3PDDTcwefJkHnnkEQoLC8nNzUXXdebMmcOtt94KwNdff813331HWVkZVqsVgIcffph58+bx1ltvcdlllwGR27BfffVV0tPTW23Pn/70p+jzbt268cQTT3D00UfjdruJi4uLLps2bRonnHACAK+88gpdunTh3Xff5dxzz222z8bjJSUlkZWVFZ0/ffp0brrpJqZMmRI93l133cU//vEPpk2bRmFhIVlZWYwfPx6z2Uxubi7Dhg0DICUlBaPRSHx8fMw+93TMMcfgdDq58cYbuffee1FKcdNNNxEOhykpKWl1u7bq2bNnzC3oe8u43dM999zDmDFjgEim68knn4zP52tTBtuWLVt48sknefjhh6PzSktLyc/Pj1mvMcuutLSU5OTkZvu58cYbyc7OjmYSl5WV4Xa7uf/++7n77rt54IEH+OSTTzjrrLNYuHAhY8aMiWbo7pkJm5mZSWlpKRDJCv/DH/7AQw89RG5ubjTLd28efvhh3G53tA9VVFQQDoej59D0OK1lBDfVlnb+HG+++Wa0TEGjbdu2sWDBAiZPnszHH3/Mli1b+Otf/0owGGTatGkAzJkzhx9//JHvv/++1X1fcMEF5OXlkZ2dzapVq7jxxhvZuHEj77zzTpvb94c//IH33nsPr9fLqaeeyowZM6LLNm/ezE033cRXX30VczdAo7Ze8zfffJPzzjuP1NRUTCYTDoeDd999lx49ekTXueaaaxg8eDApKSksWbKEm2++mZKSEv71r38BkSzcRx55hFGjRmEwGHj77bc544wzmDdvHqeddlqbz3dPhYWFDBo0iKFDhwLEZMa+8cYb6LrOjBkzojGul19+maSkJBYtWsSECROYNm0ajzzySLS0QH5+PuvWreP5559nypQpzJ49G13X+fe//43NZqNv377s2rUr5g6Hn6Mt/bW0tLTFn03jMoCJEycyY8YM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ZrVmzRp1yimnqGHDhimllKqvr1c9e/ZUY8eOVV9++aXatm2bWrhwobr66qujA1e++OKLym63q8cff1xt3LhRrVq1Sr300kvqkUceUUpFBglLS0tTf/zjH9XatWvVRx99pHr06LHPQcIqKyvV8uXL1UcffaQANWfOHLV8+fKY9/C++msoFFJHHXWUmjBhglqxYoX65JNPVHp6urr55puj62zcuFG99tpratOmTerbb79V5513nkpJSWn1s0Wp9v/dKQFaIYQQQgghhDiMtPc/mT+X1+tVV199tUpLS1NWq1WNGjVKfffdd83We+aZZxQQE+Ro5HK51NVXX62ys7OV2WxWOTk5avLkyaqwsFAp1bYArVJKzZ49W3Xt2lVZrVY1YsQI9f7777cYoP3ggw9U3759lcViUcOGDVMrV67c6zm+//77qkePHspkMsUEPj/55BM1cuRIZbfbVUJCgho2bJh64YUXlFJKvfvuu2r48OEqISFBOZ1Odcwxx6jPPvssuu3SpUtV//79ldVqVXvLwbrxxhtVZmamMpvNqmfPnuqRRx5Ruq7vtb0HEqBdt26dGjFihLLb7WrgwIHq008/PeAA7csvv6yAFqemVq5cqUaPHq2sVqvq3Lmzuv/++2OW5+XltbiPadOmxaz373//W/Xo0UPZbDY1YMAANW/evJjlXq9X/fWvf1XJycnK4XCoM888MybQtKeWznnMmDEttmXKlCkx2z755JMqNzc32te++eabVo+zp7a0s7V2NP4spkyZ0uLyMWPGxOxnyZIlavjw4cpqtapu3bqpe+65R4VCoVbbtmf/KSwsVMcdd5xKSUlRVqtV9ejRQ91www2qtra2Tee6YMECNWLECJWYmKhsNpvq2bOnuvHGG2Ou+Z5a+1zY1zXftGmTOuuss1RGRoZyOByqf//+6tVXX40uX7ZsmRo+fHi0LX369FH33ntvzBeFM2fOVH369FEOhyP63p87d+4+z3NfAdq77rpL9enTR9ntdpWSkqJOP/10tW3btujykpISddFFF0U/b7t166YuvfTSmOs8a9YsNXDgQGWxWFRycrI67rjj1DvvvBNdvnTpUjVgwABlsVjUwIED1dtvv73PAG1r7+Gm77229Nft27erSZMmKbvdrtLS0tT111+vgsFgdPm6devUwIEDo5+pp59+utqwYcNer2l7/+7UlGpS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8UuRAK0QQhyGGjNiv/76axYvXsy1114bXTZkyBCsViuLFi3i22+/5aSTTvrZx+nevTsrV65k3LhxaJq239u63e5oxuyBysvLA2DLli3Nlu05b3/bejA1tnPjxo0xgfFAIEBBQUGz69GvXz/69evHrbfeypIlSxg1ahTPPfccd999NwAGg4Fx48Yxbtw4/vWvf3Hvvfdyyy23sHDhwp91bUOhEAButztm/kUXXcQjjzzCBx98wH//+1/S09OZOHHifu8fIoHV++67j+OPP56nnnqKm266CYhkwLZUnqAxq1gIIYQQQgghDkdS4kAIIQ5DQ4cOxWazMWvWLIqKimIyaK1WK4MHD+bpp5+mvr6+TeUNWnPuuedSVFTEiy++2GyZ1+ulvr5+r9suXbqU//3vf82W1dTURAOFbZWdnc1RRx3Fq6++GhNc/OKLL1i9enXMug6HI3qcX9v48eOxWCw88cQTMZme//73v6mtreXkk08GwOVyNbsG/fr1w2Aw4Pf7Aaiqqmq2/4EDBwJE19lfH3zwAQADBgyImd+/f3/69+/PjBkzePvttzn//PMxmX7+97xjx45l2LBhPPbYY/h8PiAStN+wYQPl5eXR9VauXBktxSGEEEIIIYQQhyPJoBVCiMOQxWLh6KOP5quvvsJqtTJkyJCY5SNHjuSRRx4B2lZ/tjUXXnghb775JpdffjkLFy5k1KhRhMNhNmzYwJtvvsn//ve/6G3te7rhhht4//33OeWUU5g6dSpDhgyhvr6e1atX89Zbb7F9+3bS0tL2qz333nsvp59+OqNGjeLiiy+murqap556iqOOOiomaGu32znyyCN544036NWrFykpKRx11FEcddRRP/taNFVeXh7NcG0qPz+fyZMnc/PNNzN9+nROPPFETjvtNDZu3MgzzzzD0UcfHS0bsGDBAq666ip+//vf06tXL0KhEK+99hpGozE6MNedd97Jl19+ycknn0xeXh5lZWU888wzdOnSpU0/16KiIv7zn/8AkQzelStX8vzzz5OWlhYtb9DURRddxN///neA/Spv0JobbriB3//+98ycOZPLL7+cP/3pT/zrX/9i4sSJXHLJJZSVlfHcc8/Rt29fXC7XAR9PCCGEEEIIIToiCdAKIcRhavTo0Xz11VfRkgZNjRo1ikceeYT4+PhmmZL7w2AwMG/ePB599FFeffVV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q8Wbb76Jtm3bFrpAWGGEEADuLRZmayaTCRkZGVCr1fzLOz0SjiEqDY4fKg2OHyoNjh8qjYo2fizvLSzvNYiIiKj6qvQJ2pKYP38+5HI5Bg4ciNzcXPTs2RPffPNNiY+3FPD39/cvrxCJiIiIiKgaysjIgIuLi63DICIiIhuSCf7Jtlgmkwnx8fFwdnaGTCazdTjSomXXrl2rEIuWUeXDMUSlwfFDpcHxQ6XB8UOlUdHGjxACGRkZ8PPzqxAzeomIiMh2qsUM2tKSy+WoVauWrcMoQKvVVohfLqny4hii0uD4odLg+KHS4Pih0qhI44czZ4mIiAgA+KdaIiIiIiIiIiIiIhthgpaIiIiIiIiIiIjIRpigrYRUKhWmTp0KlUpl61CokuIYotLg+KHS4Pih0uD4odLg+CEiIqKKiouEEREREREREREREdkIZ9ASERERERERERER2QgTtEREREREREREREQ2wgQtERERERERERERkY0wQUtERERERERERERkI0zQEhEREREREREREdkIE7RERERERERERERENsIELREREREREREREZGNMEFLREREREREREREZCNM0BIRERERERERERHZCBO0RERERERERERERDbCBC0RERERERERERGRjTBBS0RERERERERERGQjTNASERERERERERER2QgTtEREREREREREREQ2wgQtERERERERERERkY0wQUtERERERERERERkI0zQEhEREREREREREdkIE7RERERERERERERENsIELREREREREREREZGNMEFLREREREREREREZCNM0BIRERERERERERHZCBO0RERERERERERERDbCBC0RERERERERERGRjTBBS0RERERERERERGQjTNASERERERERERER2QgTtEREREREREREREQ2wgQtERERERERERERkY0wQUtERERERERERERkI0zQEhEREREREREREdkIE7RERERERERERERENsIELREREREREREREZGNMEFLREREREREREREZCNM0BIRERERERERERHZCBO0RERERERERERERDbCBC0RERERERERERGRjTBBS0RERERERERERGQjTNASERERERERERER2QgTtEREREREREREREQ2wgQtERERERERERERkY0wQUtERERERERERERkI0zQEhEREREREREREdkIE7RERERERERERERENsIELREREREREREREZGNMEFLREREREREREREZCNM0BIRERERERERERHZCBO0RERERERERERERDbCBC0RERERERERERGRjTBBS0RERERERERERGQjTNASERERERERERER2QgTtEREREREREREREQ2wgQtERERERERERERkY0wQUtERERERERERERkI0zQEhEREREREREREdkIE7RERFQhrFy5EjKZDLGxsbYOhYiIiIiIiOixYYKWiKiaOXv2LF5++WXUrFkTKpUKfn5+GDZsGM6ePWvr0GzKaDRixYoV6Ny5M9zd3aFSqRAYGIhRo0bhn3/+sXV4AICoqChMmzatxEnsadOmQSaTSQ+5XA5fX1/07dsXhw4dKtPY8vcjk8mg1WoREhKCLVu2lGk/REREREREVY29rQMgIqLHZ+PGjRgyZAjc3d0xevRo1KlTB7GxsVi+fDl+/vlnrFu3Ds8//7ytw3zscnJy8MILL2D79u3o1KkTPvzwQ7i7uyM2NhY//fQTVq1ahbi4ONSqVcumcUZFRWH69Ono3LkzAgMDS3zct99+CycnJ5hMJly7dg1Lly5Fp06dcOTIEQQHB5dZfD169MCIESMghMDVq1fx7bffol+/fti2bRt69uxZZv0QERERERFVJUzQEhFVE5cvX8bw4cNRt25d7Nu3D15eXtK+t99+Gx07dsTw4cNx+vRp1K1b97HFlZWVBUdHx8fWX2EmTJiA7du3Y/78+XjnnXes9k2dOhXz58+3TWBl5MUXX4Snp6f0fMCAAWjWrBk2bNhQpgnahg0b4uWXX5aeDxw4EE2aNMGCBQuYoCUiIiIiIioCSxwQEVUTn3/+ObKzs/Hdd99ZJWcBwNPTE0uWLEFWVhY+++wzAMDPP/8MmUyGvXv3FjjXkiVLIJPJEBkZKW07f/48XnzxRbi7u0OtVuPJJ5/E//73P6vjLHVm9+7dizfeeAPe3t4PnJX622+/oU+fPvDz84NKpUK9evUwY8YMGI1Gq3adO3dGs2bNcOzYMbRr1w4ajQZ16tTB4sWLi70v169fx5IlS9CjR48CyVkAsLOzw3vvvWcV54kTJ9C7d29otVo4OTmhW7duBUoGWMoL3K+wWruBgYHo27cvDhw4gKeffhpqtRp169bFDz/8YHXcSy+9BADo0qWLVEpgz549xV7j/Xx8fAAA9vbmv9NmZmbC0dERb7/9doG2169fh52dHWbPnv3Q/TRu3Bienp64fPmy1XUUVmt4z549Ba7H8n2NiopCly5d4ODggJo1a0pjlIiIiIiIqCpggpaIqJr4/fffERgYiI4dOxa6v1OnTggMDJRqhvbp0wdOTk746aefCrRdv349mjZtimbNmgEw17V95plncO7cOXzwwQeYN28eHB0dMWDAAGzatKnA8W+88QaioqLw0Ucf4YMPPigy5pUrV8LJyQnjx4/HggUL0Lp16yKPuXPnDp599lm0bt0an332GWrVqoWxY8fi+++/f+B92bZtG/Ly8jB8+PAHtrM4e/YsOnbsiFOnTuH999/HlClTEBMTg86dO+Pw4cMlOkdhLl26hBdffBE9evTAvHnz4ObmhpEjR0q1gTt16oS33noLAPDhhx/i//7v//B///d/aNy4cbHnTklJwa1bt5CcnIwTJ05gzJgxUKvVGDRoEADAyckJzz//PNavX18g+f3jjz9CCIFhw4Y99DWlpaXhzp07cHNze+hjLe7cuYNevXqhZcuWmDdvHho1aoSJEydi27Ztj3xOIiIiIiKiioQlDoiIqoG0tDTEx8ejf//+D2zXokUL/O9//0NGRgacnZ3Rr18//Pzzz1i4cCHs7OwAAImJidi7dy+mTZsmHff222+jdu3aOHr0KFQqFQBzErZDhw6YOHFigbq27u7u2LVrl3TOoqxduxYajUZ6/vrrr+P111/HN998g5kzZ0p9AUB8fDzmzZuH8ePHAwBee+01tGnTBpMmTcLw4cOhUCgK7ePcuXMAgObNmz8wFovJkyfDYDDgwIEDUimIESNGICgoCO+//36hM45LIjo6Gvv27ZMS6IMGDYK/vz9WrFiBuXPnom7duujYsSMWLlyIHj16oHPnziU+d1BQkNVzV1dX/Prrr2jatKm0bcSIEVizZg127NiBXr16SdtXr16NTp06oXbt2sX2o9PpcOvWLQghEBcXh8mTJ8NoNOLFF18scaz3i4+Pxw8//CAl0EePHo2AgAAsX74cvXv3fuTzEhERERERVRScQUtEVA1kZGQAAJydnR/YzrI/PT0dADB48GAkJydbfez8559/hslkwuDBgwGYZ2f+9ddfGDRoEDIyMnDr1i3cunULt2/fRs+ePXHx4kXcuHHDqp8xY8YUm5wFYJWctZy7Y8eOyM7Oxvnz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ozFkyBBERUUVe9zYsWMxfPhwjBgxAjNmzICnpyd++umnAuUsAKBGjRoIDQ0FgGJLPpSERqPBuHHjcOjQIezZsweAefGxdu3a4dNPP8WsWbPQpUsXfPrpp6Xui4iIiIiIqDKSCa6yQURElVznzp1x69YtREZG2jqUKuH555/HmTNncOnSJVuHQkREREREVOVxBi0RERFJEhISsGXLljKZPUtERERERETFYw1aIiIiQkxMDP7++28sW7YMCoWi0PIHREREREREVPY4g5aIiIiwd+9eDB8+HDExMVi1ahV8fHxsHRIREREREVG1wBq0RERERERERERERDbCGbRERERERERERERENsIatCVgMpkQHx8PZ2dnyGQyW4dDRERERESVnBACGRkZ8PPzg1zOeTNERETVGRO0JRAfHw9/f39bh0FERERERFXMtWvXUKtWLVuHQURERDbEBG0JODs7AzD/8qTVam0cjXlG782bN+Hl5cW/ttMj4Rii0uD4odLg+KHS4Pih0qho4yc9PR3+/v7Sew0iIiKqvpigLQFLWQOtVlthErQ6nQ5arbZC/HJJlQ/HEJUGxw+VBscPlQbHD5VGRR0/LKFGREREFec3EyIiIiIiIiIiIqJqhglaIiIiIiIiIiIiIhthgpaIiIiIiIiIiIjIRpigJSIiIiIiIiIiIrIRJmiJiIiIiIiIiIiIbIQJWiIiIiIiIiIiIiIbYYKWiIiIiIiIiIiIyEaYoCUiIiIiIiIiIiKyESZoiYiIiIiIiIiIiGyECVoiIiIiIiIiIiIiG2GCloiIiIiIiIiIiMhGmKAlIiIiIiIiIiIishEmaCuhO3fuIDk5Genp6bYOhYiIiIiIiIiIiErB3tYB0MM7deoUzp07B6VSiYEDB8Ld3d3WIREREREREREREdEj4AzaSsjR0REAYDKZcPToURtHQ0RERERERERERI+KCdpK6KmnnkKPHj0gk8kQGxuLiIgIxMXF2TosIiIiIiIiIiIiekhM0FZSWq0WDRo0AACcPn0af/zxB/R6vY2jIiIiIiIiIiIioofBBG0l9swzzyA4OBj29vYwmUzIzMy0dUhERERERERERET0EJigrcRUKhXatGkDrVYLAMjKyrJxRERERERERERERPQwmKCtAiyLhmVlZSEhIQHR0dHQ6XQ2joqIiIiIiIiIiIiKY2/rAKj0LAna2NhYXL16FQDQoEEDdO3a1ZZhERERERERERERUTE4g7YKcHBwAAApOQsA165dg8lkslVIREREREREREREVAJM0FYBKpWqwDadToeUlBQbRENEREREREREREQlxQRtFeDl5SV9PXr0aNSuXRsAcOPGDVuFRERERERERERERCXABG0V4OPjg549e+Lll1+Gvb09atasCYAJWiIiIiIiIiIiooqOi4RVATKZDIGBgdJzS4I2ISEBeXl5sLfnt5mIiIiIiIiIiKgi4gzaKsjNzQ1OTk7Iy8tDVFSUrcMhIiIiIiIiIiKiIjBBWwXJ5XK0atUKAHDu3DkbR0NERERERERERERFYYK2igoICAAApKWlIS8vz8bREBERERERERERUWGYoK2iHBwcoFarIYTAnTt3bB0OERERERERERERFYIJ2ipKJpPB3d0dAJCSkmLjaIiIiIiIiIiIiKgwTNBWYZYE7Y0bN2wcCRERERERERERERWGCdoqrEGDBgCAS5cucRYtERERERERERFRBcQEbRXm7e2NwMBACCHwzz//2DocIiIiIiIiIiIiug8TtFXcU089BZlMhpiYGJw+fRpCCFuHRERERERERERERHcxQVvFubu7o379+gCAiIgIREZG2jgiIiIiIiIiIiIismCCthp4+umn4eTkBAA4fvw4DAaDjSMiIiIiIiIiIiIigAnaasHJyQlDhgyBg4MDdDodbt68aeuQiIiIiIiIiIiICEzQVhtyuRyenp4AgJSUFBtHQ0RERERERERERAATtNWKu7s7ACZoiYiIiIiIiIiIKgomaKsRS4L20qVL2Lp1K3Q6nY0jIiIiIiIiIiIiqt6YoK1GatSoAZlMBoPBgGvXruHixYu2DomIiIiIiIiIiKhaY4K2GtFqtRg0aBCaNGkCALhx44aNIyIiIiIiIiIiIqremKCtZlxdXREUFAQASEhIgMlksnFERERERERERERE1RcTtNWQp6cnVCoV9Ho9bt68aetwiIiIiIiIiIiIqi0maKshuVwOPz8/ACxzQEREREREREREZEtM0FZTlgRtfHy8jSMhIiIiIiIiIiKqvpigraa8vb0BALdv34YQwsbREBERERERERERVU9M0FZTbm5ukMlk0Ol0yMnJsXU4RERERERERERE1RITtNWUQqGAVqsFAKSkpNg4GiIiIiIiIiIiouqJCdpq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gQPJyMggOTmZXr16AXgJqr70DRAYGMi6desYNWoUTz/9NADt2rXj559/9vl8N8SYMWPUyLzGIMsyCxYsUCNmx40bx+rVq/nvf//r0/FfffUVW7du5d1331XLcnJyan22zZo1Iycnp842KisrmT59OrfccosamX74sCdx7pw5c3j55Zdp2bIlL730EoMGDeLAgQOEhYXV20/VGAAOHjzIo48+yq+//urTeZZlmQcffJB+/frRuXNntS2DwVArerShOdXEl3GeDtOnTyc2NlYV0vLy8rBYLMydO5dnnnmG559/nhUrVnD99dezdu1aL1Hyrbfe4pFHHqGiooL27duzcuVKNZLXbrdzyy238OKLL9KiRQv1s/CV+uZbVlaGzWbDbDZz+PBh3n77baZOncpjjz3G1q1buf/++zEYDEyYMMHnuYwZM4aEhARiY2PZtWsX06dPZ//+/bUelNxyyy1899132Gw2rrnmGj744AN1X79+/fj888+5+eabqaysxOVycc011/Dmm282at4n09B948svv0SWZT744AP1d+P8+fMJCQlh3bp1DBkyhNmzZ/PSSy+p1gKtWrVi7969vPvuu0yYMIGFCxciyzIffvghJpOJTp06cfz4ce65554zGrcv17sv1/TZOq/nGyKCViA4DeLi4ujduzd9+/ZFo9GSfuAi8rNbExM9DrPZE525ZMkSnzy3JMk7OrKmwOrv1wY/v1YEB/cAIDdvubqvqOg3dbukZAtHMzxPCWsKvEaj58bmDi7FZq5eDiBJIAfZTzk2XXh1pKk+wgxy9Xz+Sg/XxhLQrzn+vZoRelNidaGmWuRsjEdwUyBJEroQkxol22BdjYQuzIR/nxj8ezUjfExSrTpaH8TxmmK6QCAQCASCfzaSJKHX68/Jy9fvXampqdjt9jp9Pav2d+vWTRVnwfOjXZblWkmYTkVNH0xJkoiOjiYvL69RbdTFoUOHsFqtXHnllQQEBKivTz75RF2ae88997Bo0SK6d+/OI488wsaNGxvdj81mY+LEifTr14/ff/+dDRs20LlzZ0aMGIHNZjvjeVSJQI2lZcuWXnYGMTExPp/XtWvXcvvtt/P+++/TqVOnUx9QB06nk5tuuglFUXj77bfVcvlEHobHH3+c0aNHq76pkiSxePFin9p2u92MGTOGJ598ksTExFMfAEyaNIk///yTRYsW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Ds85cbnqtjhwOUtRFMXL67WuCFpLxQFS9z1Gys7bkeXaS7NON6NofVRH0HpH7p5uJO+BA09x4ODTZGd7lrTk5//C/v2zOJz++pkNFNAG1haNFVlBcYv7ikAgEAgEgrPPzJkzeeihh5g1axZJSUncfPPNauSVn58fP//8M0VFRfTu3ZsbbriBwYMH88Ybb6jH33HHHUyYMIHx48czcOBAWrdurYorvqLT6Xj99dd59913iY2NrTdCq3nz5jz55JM8+uijNGvWTM2Y/vTTTzNz5kyee+45kpKSGDZsGMuXL1cFK4PBwIwZM+jatSuXXnopWq2WRYsWNapvgJ9++okBAwbQq1cvli9fznfffceoUaMaNVdfCQsL47PPPuPHH3+kS5cufPHFF+oS8zPh448/xmq18txzzxETE6O+rr/+erXOJZdcwsKFC3nvvffo1q0bX3/9NUuXLlXFt8zMTL7//nuOHz9O9+7dvdrZuHGj2s6LL77Iv/71L8aNG0fv3r05evQoa9asITTU81tDq9WybNkytFotffv25dZbb2X8+PFq8jVfefvttyktLWXQoEFeY/nyy2oP6FdeeYWrr76a0aNHc+mllxIdHc23337rU/u+jjM5OZnk5GT++OMPFi5cSHJyMldddZXXOB0OBzfccIPXOOfNm6fWue6663jnnXd44YUX6NKlCx988AHffPONmrjPF/R6PW+++SZ9+/ale/fuvPvuu7z88svMnj3bp+NlWWbGjBl0796dXr168eabb/L88883+nM51Tnv0KEDP/zwA7t27aJv374MGDCArKwsVqxY4RU49fTTT9OzZ0/69OnDd999x5dffuklEhYXF3PXXXeRlJTEVVddRVlZGRs3bmx0dHNNtFothYWFjB8/nsTERG666SaGDx/Ok08+CXg8tdevX8+BAwcYMGAAycnJzJo1S00IBh7P5fHjx/PQQw/Rvn17Ro0axdatW2nRogUAF198Me+//z6vvfYa3bp145dffuGJJ5445dhmzZpFcnIys2fPxmKxqNfdtm3b1LGf6npt1aoVy5cvZ+XKlXTr1o2XXnqJDz74gKFDh6p1SktLmTRpEh06dGD8+PH079+fn3/+uZatyoWOpDS1GvEXM2fOHPXCrKJ9+/bs27cP8GRxfOihh1i0aBF2u52hQ4fy1ltvNcpEvqysjODgYEpLS728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oKmpKcORpDmOQ3NzM36/H9tWjV2+PuWQ7Ajlj+wI5Y/sCOWP7IjOlj9bfrfY8ruGiIiI/HCpQLsdmpubAejevXuGIxERERERke+T5uZmcnNzMx2GiIiIZJBl9Cfbr+Q4DhUVFWRnZ2NZVqbDoampie7du7N+/XpycnIyHY7shJRDsiOUP7IjlD+yI5Q/siM6W/4YY2hubqa8vLxT9OgVERGRzFEP2u1g2zbdunXLdBhbycnJ6RRvLmXnpRySHaH8kR2h/JEdofyRHdGZ8kc9Z0VERAQ0SZiIiIiIiIiIiIhIxqhAKyIiIiIiIiIiIpIhKtDuhHw+H1dffTU+ny/TochOSjkkO0L5IztC+SM7QvkjO0L5IyIiIp2VJgkTERERERERERERyRD1oBURERERERERERHJEBVoRURERERERERERDJEBVoRERERERERERGRDFGBVkRERERERERERCRDVKAVERERERERERERyRAVaEVEREREREREREQyRAVaERERERERERERkQxRgVZEREREREREREQkQ1SgFREREREREREREckQFWhFREREREREREREMkQFWhEREREREREREZEMUYFWREREREREREREJENUoBURERERERERERHJEBVoRURERERERERERDJEBVoRERERERERERGRDFGBVkRERERERERERCRDVKAVERERERERERERyRAVaEVEREREREREREQyRAVaERERERERERERkQxRgVZEREREREREREQkQ1SgFREREREREREREckQFWhFREREREREREREMkQFWhEREREREREREZEMUYFWREREREREREREJENUoBURERERERERERHJEBVoRURERERERERERDJEBVoRERERERERERGRDFGBVkRERERERERERCRDVKAVERERERERERERyRAVaEVEREREREREREQyRAVaERERERERERERkQxRgVZEREREREREREQkQ1SgFREREREREREREckQFWhFREREREREREREMkQFWhEREREREREREZEMUYFWREREREREREREJENUoBURERERERERERHJEBVoRURERERERERERDJEBVoRERERERERERGRDFGBVkRERERERERERCRDVKAVERERERERERERyRAVaEVEREREREREREQyRAVaERERERERERERkQxRgVZEREREREREREQkQ1SgFREREREREREREckQFWhFREREREREREREMkQFWhEREREREREREZEMUYFWREREREREREREJENUoBURERERERERERHJEBVoRURERERERERERDJEBVoRERERERERERGRDFGBVkRERERERERERCRDVKAVERERERERERERyRAVaEVE5Adl/PjxjB8/PtNhiIiIiIiIiAAq0IqI7HQeeOABLMvCsiymT5++1XZjDN27d8eyLI488sgMRJiO4T//+Q/jxo0jLy+PYDDIkCFD+MMf/kBra2tGYupMXn75ZSzLory8HMdxMh3ONo0fP749zyzLwuv10rt3b84991zWr1//rZ3n7bff7nAel8tFcXExP/rRj1i8ePG3dh4REREREZHOyp3pAERE5Jvx+/08/PDD7Lvvvh3Wv/POO2zYsAGfz5eRuFKpFCeddBKPP/44Y8eO5ZprriEYDPLee+9x7bXX8sQTT/DGG29QUlKSkfg6gylTptCrVy/WrFnDW2+9xYQJEzId0jZ169aN66+/HoB4PM6iRYu4++67ee2111i8eDHBYPBbO9eFF17I3nvvTSKRYN68edx99928/fbbLFiwgNLS0m/tPCIiIiIiIp2NCrQiIjupww8/nCeeeII77rgDt/uzl/OHH36YYcOGUVtbm5G4brzxRh5//HF+/etfc9NNN7WvP/fccznhhBOYOHEiZ5xxBq+88sp3GldbW9u3WlD8plpbW3nuuee4/vrruf/++5kyZcp2FWgdxyEej+P3+7+DKNNyc3M55ZRTOqzr3bs3F1xwAe+//z4HHXTQt3ausWPH8qMf/aj98S677MJ5553Hgw8+yKWXXvqtnUdERERERKSz0RAHIiI7qR//+MfU1dUxderU9nXxeJwnn3ySk046aZv73HzzzYwZM4bCwkICgQDDhg3jySef7NDm/vvvx7Is7rvvvg7r//SnP2FZFi+//PIXxhSJRLjpppsYMGBAe8/LzzvqqKM4/fTTefXVV/nwww8BOPLII+nTp882jzd69GiGDx/eYd1DDz3EsGHDCAQCFBQUMHny5K0+cj9+/Hh22203Zs+ezbhx4wgGg/z2t7/d5jni8ThXXXUVw4YNIzc3l1AoxNixY5k2bVqHdmvWrMGyLG6++WZuu+02evbsSSAQYL/99mPBggVfeE/+2zPPPEMkEuH4449n8uTJPP3000Sj0a3aWZbFBRdcwJQpUxg8eDA+n49XX30VgI0bN3LWWWdRUlKCz+dj8ODBW32/tve6vq4tvVm3/FFg2rRpWJbFM888s1Xbhx9+GMuymDFjxtc+z9ixYwFYuXJl+7ozzjiDXr16bdX2mmuuwbKsDuu23L9nn32W3Xbbrf0+bbmHIiIiIiIinYUKtCIiO6levXoxevRoHnnkkfZ1r7zyCuFwmMmTJ29zn7/85S8MHTqUP/zhD/zpT3/C7XZz/PHH89JLL7W3OfPMMznyyCO55JJL2guf8+fP59prr+Xss8/m8MMP/8KYpk+fTkNDAyeddFKHXr2fd9pppwHw4osvAnDiiSeyevVqPvroow7t1q5dy4cfftjhWq677jpOO+00+vfvz6233spFF13Em2++ybhx42hsbOywf11dHYcddhh77rknt99+O/vvv/8242lqauLee+9l/Pjx3HDDDVxzzTXU1NRwyCGH8Omnn27V/sEHH+SOO+7g/PPP54orrmDBggUccMABVFVVfeF9+bwpU6aw//77U1payuTJk2lubuaFF17YZtu33nqLiy++mBNPPJG//OUv9OrVi6qqKkaNGsUbb7zBBRdcwF/+8hf69evH2Wefze233/6Nr2tbUqkUtbW11NbWsmnTJt566y2uvvpq+vXrxz777AOki+Hdu3dnypQp27zWvn37Mnr06O063+etWbMGgPz8/K+97xbTp0/n5z//OZMnT+bGG28kGo0yadIk6urqvvExRUREREREvnVGRER2Kvfff78BzEcffWT++te/muzsbNPW1maMMeb44483+++/vzHGmJ49e5ojjjiiw75b2m0Rj8fNbrvtZg444IAO6zdt2mQKCgrMQQcdZGKxmBk6dKjp0aOHCYfDXxrb7bffbgDzzDPPfGGb+vp6A5jjjjvOGGNMOBw2Pp/P/OpXv+rQ7sYbbzSWZZm1a9caY4xZs2aNcblc5rrrruvQbv78+cbtdndYv99++xnA3H333Vudf7/99jP77bdf++NkMmlisViHNg0NDaakpMScddZZ7etWr15tABMIBMyGDRva18+cOdMA5uKLL/7Ca96iqqrKuN1u889//rN93ZgxY8wxxxyzVVvA2LZtFi5c2GH92WefbcrKykxtbW2H9ZMnTza5ubnt3+Ptva4vsuUe/vcycOBAs2rVqg5tr7jiCuPz+UxjY2P7uurqauN2u83VV1/9peeZNm2aAcx9991nampqTEVFhXn11VdNv379jGVZZtasWe1tTz/9dNOzZ8+tjnH11Veb/35LAxiv12tWrFjRvm7u3LkGMHfeeedXXr+IiIiIiMh3RT1oRUR2YieccAKRSIQXX3yR5uZmXnzxxS8c3gAgEAi0f93Q0EA4HGbs2LF88sknHdqVlpbyt7/9jalTpzJ27Fg+/fRT7rvvPnJycr40nubmZgCys7O/sM2WbU1NTQDk5ORw2GGH8fjjj2OMaW/32GOPMWrUKHr06AHA008/jeM4nHDCCe29OmtrayktLaV///5bfXTf5/Nx5plnfmm8AC6XC6/XC6THea2vryeZTDJ8+PCt7gvAxIkT6dq1a/vjESNGMHLkyC8d+mGLRx99FNu2mTRpUvu6H//4x7zyyis0NDRs1X6//fZj0KBB7Y+NMTz11FMcddRRGGM63IdDDjmEcDjcHvPXva5t6dWrF1OnTmXq1Km88sor3H777YTDYQ477DBqamra25122mnEYrEOw2U89thjJJPJrcaw/SJnnXUWRUVFlJeXc+ihhxIOh/nPf/7D3nvvvV37b8uECRPo27dv++Pdd9+dnJwcVq1a9Y2PKSIiIiIi8m3TJGEiIjuxoqIiJkyYwMMPP0xbWxupVKrDREv/7cUXX+SPf/wjn376KbFYrH39f4/fCTB58mQeeughXnrpJc4991wOPPDAr4xnS/F1S6F2W7ZVxD3xxBN59tlnmTFjBmPGjGHlypXMnj27w0f2ly9fjjGG/v37b/O4Ho+nw+OuXbu2Fyi/yr///W9uueUWlixZQiKRaF/fu3fvrdpu6/wDBgzg8ccf/8rzPPTQQ4wYMYK6urr2j9kPHTqUeDzOE088wbnnntuh/X+fv6amhsbGRu655x7uueeebZ6jurr6G13XtoRCoQ4TmB166KHsu+++DB8+nD//+c/ccsstAOy6667svffeTJkyhbPPPhtID28watQo+vXrt13nuuqqqxg7diwtLS0888wz7cXsHbGluP95+fn52yyGi4iIiIiIZIoKtCIiO7mTTjqJc845h8rKSg477DDy8vK22e69997j6KOPZty4cfz973+nrKwMj8fD/fffz8MPP7xV+7q6Oj7++GMAFi1ahOM4X1kwGzhwIADz5s1j4sSJ22wzb948gA49Q4866iiCwSCPP/44Y8aM4fHHH8e2bY4//vj2No7jYFkWr7zyCi6Xa6vjZmVldXj8+d7CX+ahhx7ijDPOYOLEifzmN7+huLgYl8vF9ddf32GCqh21fPny9nF2t1XknTJlylYF2v++BsdxADjllFM4/fTTt3me3XffHfjfXdeWScfefffdDutPO+00fvnLX7JhwwZisRgffvghf/3rX7f7uEOGDGkvBk+cOJG2tjbOOecc9t13X7p37w5s+w8JkB4rd1u2lSdAh57aIiIiIiIimaYCrYjITu7YY4/lpz/9KR9++CGPPfbYF7Z76qmn8Pv9vPbaa/h8vvb1999//zbbn3/++TQ3N3P99ddzxRVXcPvtt3PJJZd8aSz77rsveXl5PPzww/zud7/bZoHswQcfBODII49sXxcKhTjyyCN54oknuPXWW3nssccYO3Ys5eXl7W369u2LMYbevXszYMCAL43j63jyySfp06cPTz/9dIcC4NVXX73N9suXL99q3bJly+jVq9eXnmfKlCl4PB7+85//bHVfpk+fzh133MG6deu22etzi6KiIrKzs0mlUh16tm7L172uryOVStHS0tJh3eTJk7nkkkt45JFHiEQieDweTjzxxG98jj//+c8888wzXHfdddx9991Auvfrf08GB+kJ5URERERERHZWGoNWRGQnl5WVxV133cU111zDUUcd9YXtXC4XlmV16G24Zs0ann322a3aPvnkkzz22GP8+c9/5vLLL2fy5MlceeWVLFu27EtjCQaD/PrXv2bp0qX87ne/22r7Sy+9xAMPPMAhhxzCqFGjOmw78cQTqaio4N5772Xu3LlbFfeOO+44XC4X11577VY9II0x7UMGfF1biqWfP+bMmTOZMWPGNts/++yzbNy4sf3xrFmzmDlzJocddtiXnmfKlCmMHTuWE088kR/96Ecdlt/85jcAPPLII18Z66RJk3jqqadYsGDBVts/Py7s172u7TVt2jRaWlrYY489Oqzv0qULhx12GA899BBTpkzh0EMPpUuXLt/4PH379mXSpEk88MADVFZWtq8Lh8PtvbABNm3axDPPPPONzyMiIiIiIpJp6kErIvI98EUfd/+8I444gltvvZVDDz2Uk046ierqav72t7/Rr1+/DgWv6upqzjvvPPbff38uuOACAP76178ybdo0zjjjDKZPn/6lQx1cfvnlzJkzhxtuuIEZM2YwadIkAoEA06dP56GHHmLgwIH8+9//3mq/ww8/nOzsbH7961+3FyI/r2/fvvzxj3/kiiuuYM2aNUycOJHs7GxWr17NM888w7nnnsuvf/3r7b1l7Y488kiefvppjj32WI444ghWr17N3XffzaBBg7bqJQrQr18/9t13X8477zxisRi33347hYWFXHrppV94jpkzZ7JixYr2+/nfunbtyl577cWUKVO47LLLvjTeP//5z0ybNo2RI0dyzjnnMGjQIOrr6/nkk0944403qK+v/0bXtS3hcJiHHnoIgGQyydKlS7nrrrsIBAJcfvnlW7U/7bTT2sdA/r//+7/tOseX+c1vfsPjjz/O7bffzp///GcmT57MZZddxrHHHsuFF15IW1sbd911FwMGDNjuic9EREREREQ6G/WgFRH5gTjggAP417/+RWVlJRdddBGPPPIIN9xwA8cee2yHdlsKj/fff3/7R+MLCwu55557mDFjBjfffPOXnsflcvH4449z//33k0ql+P3vf8+FF17I7Nmzufrqq5k5cyYlJSVb7ef3+zn66KNpbm5m//33p7i4eKs2l19+OU899RS2bXPttdfy61//mueff56DDz6Yo48++hvdlzPOOIM//elPzJ07lwsvvJDXXnuNhx56iOHDh2+z/WmnncYvfvEL/vrXv3LdddcxePBg3nrrLcrKyr7wHFOmTAH40h7ORx11FPPnz+9QLN+WkpISZs2axZlnnsnTTz/NBRdcwF/+8hfq6+u54YYbvvF1bcuGDRs49dRTOfXUUznrrLO455572G+//Zg+fTp77rnnNq8hPz+f3Nzcb/z9+Lzhw4czfvx47rrrLsLhMIWFhTzzzDMEg0EuvfRS/v3vf3P99dd/6X0VERERERHp7CyjmTJERES+0po1a+jduzc33XTTN+qp+0OQTCYpLy/nqKOO4l//+lemwxEREREREdkpqAetiIiIfCueffZZampqOO200zIdioiIiIiIyE5DY9CKiIjIDpk5cybz5s3j//7v/xg6dCj77bdfpkMSERERERHZaagHrYiIiOyQu+66i/POO4/i4mIefPDBTIcjIiIiIiKyU9EYtCIiIiIiIiIiIiIZoh60IiIiIiIiIiIiIhmiMWi3g+M4VFRUkJ2djWVZmQ5HRERERER2csYYmpubKS8vx7bV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0Iu2qqqK0tLS9jazZs3qcKyqqqr2bVv+3bLu821ycnK22XsWwOfz4fP5tlpv23aneDMHYFlWp4pH0kLDSkjVR4kubaD5tbXkn7AL7rytc6kz+HwOdemazeCxXVnwzkbmTF1HUY8csvI7Z9zSOeg1SHaE8kd2hPJHdkRnyp/OEIOIiIh0Dp3iXcH9999PcXExRxxxRPu6YcOG4fF4ePPNN9vXLV26lHXr1jF69GgARo8ezfz586murm5vM3XqVHJychg0aFB7m88fY0ubLccQ+TZZlkXOAT3wlARxYinCL6/CJHeO8cUGji6jqHsWybjDzBdW4TidZv5AEREREREREZHvrYwXaB3H4f777+f000/H7f6sQ29ubi5nn302l1xyCdOmTWP27NmceeaZjB49mlGjRgFw8MEHM2jQIE499VTmzp3La6+9xpVXXsn555/f3gP2Zz/7GatWreLSSy9lyZIl/P3vf+fxxx/n4osvzsj1yvef5bbJPaIPdtBNsi5K83sbMh3SdrFsixFH98Hjc1G3oYXF71dkOiQRERERERERke+9jBdo33jjDdatW8dZZ5211bbbbruNI488kkmTJjFu3DhKS0s7DIPgcrl48cUXcblcjB49mlNOOYXTTjuNP/zhD+1tevfuzUsvvcTUqVPZY489uOWWW7j33ns55JBDvpPrkx8mV8hD7sG9wILIgjqiyxoyHdJ2CeX62OvQngAsml5B3caWDEckIiIiIiIiIvL9Zhlj9Dnmr9DU1ERubi7hcLjTTBJWXV1NcXGxxq7q5FpmVND6cRWWx6bgx7vizu0c47p+VQ59+NxK1i2sJ5Tn4+CfDMbjdWUgSums9BokO0L5IztC+SM7orPlT2f7HUNEREQyJ/PvTES+x0Ijy/CUhTAJh6ZX1+w049HudUhPgrleWhtjfDp1XabDERERERERERH53lKBVuR/yLItcg/phe1zkahuo3n6xkyHtF28fjcjj+qDZcHqubVsWFKf6ZBERERERERERL6XVKAV+R9zZXvJOaRXejza+bVEdpJiZ1GPbHYdXQbAx6+soa0pnuGIRERERERERES+f1SgFfkO+HrmENq7FIDmt9aRqGnLcETbZ/DYcgrKQsQjKWa9uBrjaMhqEREREREREZFvkwq0It+R0N6l+HrmYFKG8MurcaLJTIf0lWyXzchj+uD22lSv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UTNu3Djj8/nM/fffb66++mqzxx57dGh72223mZ49e24Vx0033WRKS0tNQUGB+fnPf27i8fh2xbbFoEGDzLXXXtv+eMSIEeb8889vf5xKpUx5ebm5/vrrv/AYjz/+uPF6vSaRSBhjjKmvrzeBQMC88cYbX7jP3//+d5Ofn29isVj7ussuu8zssssuHdolk0kzZswYc++9927XvZ81a5YBzNq1a40xxixatMgA5qOPPmpv88orrxjLsszGjRu/9FhfJ84tevbsaW677bavPG51dbUBzDvvvNO+buTIkebKK6/8yn0/78YbbzS9e/f+xvF+mR25FmOMmTNnjunatavZtGmTAcwzzzzTvm17cuTzvs7z7thjjzWnnHLKl7bp2bNnh9eJ//ZFrxtbzJ8/3xx66KEmFAqZ4uJic8opp5iampr27alUyvzpT39qf03efffdzRNPPNHhHC+99JLp37+/8fv9Zvz48eb+++9vr7l9lS2vif/ddnvy/X+V0//9M/ebymgP2rKyMgYNGtRh3cCBA9v/QlBaWgpAVVUVZWVl7W2qqqrYc88929tUV1d3OEYymaS+vr59/9LSUqqqqjq02fJ4S5vP8/l8+Hy+rdbbtt1p/iK65a+znSUe6RyyRpbR8MwKYovrydq7FFeW9wvbdpYc8gW9jDy6D29PWcLa+XWU98uj+8CCjMYkX62z5I/snJQ/siOUP7IjOlP+fJcxxJIOx9894zs73+c98bPR+D2u7W7/73//m0svvZRZs2bx2GOPcd555/HMM89w7LHH8tvf/pbbbruNU089lXXr1hEMBnEch27duvHEE09QWFjIBx98wLnnnktZWRknnHACfr+fKVOmMHLkSI444giOPPJITjnlFA466CDOOuusL4zDtm3uuOMOevfuzapVq/j5z3/OpZdeyt///vf2Nm1tbdxwww3ce++9FBYWUlxczAUXXMCiRYt49NFHKS8v55lnnuHQQw9l/vz59O/fn2g0yrBhw7jsssvIycnhpZde4tRTT6Vv376MGDFiqzjGjBnD7bffzlVXXdX+UeqsrCyArzzX+eefTzwe59133yUUCrFo0SKysrLo3r07Tz31FJMmTWLp0qXk5OQQCAS2+3v0bbr88su55ZZbGDp0KH6/n3/84x/btd+0adMoKytj2rRprFixghNPPJE999yTc845Z7v2dxyH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UcFpNk/0R0TGF2qY3G9P+kOXRjziwsJruccGWY+Ovk6l07jc7qNrxvV3ijFIjEE62IWFi5BVQtAqwnWOXZmj48gtLlY6OCU+oHROAimoSUElEHVZpEZH3J/qUwRWzu2jI/hzY8TjXzGn+u2f7lMMuXud7FZOJY99YIDj30fP5/XrHl1OdPTRrZM8g2zUalwY48XktOnkP2GwsVyp0VG9Ni73WPh74qjg0VHG1vmM/D21o3+XC3fkO/U92Wm/Y6Y4CASc+6kiERERmVhTIqA9W36/H7//xHkRXS6XIzpzAJZlOao9MvlMSA25CyFQCMy4eI+RR8HRZapx2hx+MrmofuR8qH7kfBytH6f0oZ3QBhEREXGGKdErqKiowO1209HRkbO+o6ODmpqaPLVKREREREREREREpropEdD6fD6uvPJKVq1alV1n2zarVq1i+fLleWyZiIiIiIiIiIiITGVTZoqDj3zkI9x9991cddVVXHPNNXzta18jEolwzz335LtpIiIiIiIiIiIiMkVNmYD2ne98J11dXXzmM5+hvb2dyy+/nKeffvqEC4eJiIiIiIiIiIiITJQpE9ACPPDAAzzwwAP5boaIiIiIiIiIiIgIMEXmoBURERERERERERFxIgW0IiIiIiIiIiIiInmigFZEREREREREREQkTxTQioiIiIiIiIiIiOSJAloRERERERERERGRPFFAKyIiIiIiIiIiIpInCmhFRERERERERERE8kQBrYiIiIiIiIiIiEieePLdgMnAGAPA4OBgnluSYds2Q0NDBAIBXC5l7HL2VENyPlQ/cj5UP3I+VD9yPpxWP0fPLY6ea4iIiMjUpYB2HIaGhgCYPn16nlsiIiIiIiKXkqGhIYqLi/PdDBEREckjy+hftmdk2zatra0UFhZiWVa+m8Pg4CDTp0/n0KFDFBUV5bs5MgmphuR8qH7kfKh+5HyofuR8OK1+jDEMDQ1RV1fniBG9IiIikj8aQTsOLpeL+vr6fDfjBEVFRY7oXMrkpRqS86H6kfOh+pHzofqR8+Gk+tHIWREREQFdJExEREREREREREQkbxTQioiIiIiIiIiIiOSJAtpJyO/389nPfha/35/vpsgkpRqS86H6kfOh+pHzofqR86H6EREREafSRcJERERERERERERE8kQjaEVERERERERERETyRAGtiIiIiIiIiIiISJ4ooBURERERERERERHJEwW0IiIiIiIiIiIiInmigHYS+ta3vkVjYyOBQIBly5bx8ssv57tJkmdf/OIXufrqqyksLKSqqoq3vOUttLS05OwTi8W4//77KS8vJxwO89a3vpWOjo6cfQ4ePMgdd9xBKBSiqqqKj33sY6RSqYl8KuIADz30EJZl8aEPfSi7TvUjZ3LkyBH+5m/+hvLycoLBIIsWLeKVV17JbjfG8JnPfIba2lqCwSA333wzu3btyrmP3t5eVqxYQVFRESUlJbz//e9neHh4op+KTLB0Os2nP/1pmpqaCAaDzJo1i3/+53/m2OvYqn7kqBdeeIE3velN1NXVYVkWv/71r3O2X6ha2bRpE6997WsJBAJMnz6dL3/5yxf7qYmIiMgUpoB2kvnZz37GRz7yET772c/y6quvsmTJEm699VY6Ozvz3TTJo+eff57777+fl156iWeeeYZkMsktt9xCJBLJ7vPhD3+Y3/72tzz++OM8//zztLa2ctddd2W3p9Np7rjjDhKJBH/5y1/493//d37yk5/wmc98Jh9PSfJk7dq1fPe732Xx4sU561U/cjp9fX1cd911eL1ennrqKbZt28a//uu/Ulpamt3ny1/+Ml//+tf5zne+w5o1aygoKODWW28lFotl91mxYgVbt27lmWee4Xe/+x0vvPAC9957bz6ekkygL33pS6xcuZJvfvObbN++nS996Ut8+ctf5hvf+EZ2H9WPHBWJRFiyZAnf+ta3Trr9QtTK4OAgt9xyCw0NDaxbt46vfOUrfO5zn+N73/veRX9+IiIiMkUZmVSuueYac//992dvp9NpU1dXZ774xS/msVXiNJ2dnQYwzz//vDHGmP7+fuP1es3jjz+e3Wf79u0GMKtXrzbGGPP73//euFwu097ent1n5cqVpqioyMTj8Yl9ApIXQ0NDZs6cOeaZZ54xN9xwg3nwwQeNMaofObOPf/zj5vrrrz/ldtu2TU1NjfnKV76SXdff32/8fr959NFHjTHGbNu2zQBm7dq12X2eeuopY1mWOXLkyMVrvOTdHXfcYd73vvflrLvrrrvMihUrjDGqHzk1wDzxxBPZ2xeqVr797W+b0tLSnPevj3/846a5ufkiPyMRERGZqjSCdhJJJBKsW7eOm2++ObvO5XJx8803s3r16jy2TJxmYGAAgLKyMgDWrVtHMpnMqZ3LLruMGTNmZGtn9erVLFq0iOrq6uw+t956K4ODg2zdunUCWy/5cv/993PHHXfk1AmofuTMnnzySa666ire/va3U1VVxRVXXMH3v//97PZ9+/bR3t6eU0PFxcUsW7Ysp4ZKSkq46qqrsvvcfPPNuFwu1qxZM3FPRibca17zGlatWsXOnTsB2LhxIy+++CK33347oPqR8btQtbJ69Wpe97rX4fP5svvceuuttLS00NfXN0HPRkRERKYST74bIOPX3d1NOp3OCUAAqqur2bFjR55aJU5j2zYf+tCHuO6661i4cCEA7e3t+Hw+SkpKcvatrq6mvb09u8/JauvoNrm0PfbYY7z66qusXbv2hG2qHzmTvXv3snLlSj7ykY/wqU99irVr1/I//+f/xOfzcffdd2dr4GQ1cmwNVVVV5Wz3eDyUlZWphi5xn/jEJxgcHOSyyy7D7XaTTqf5l3/5F1asWAGg+pFxu1C10t7eTlNT0wn3cXTbsdO3iIiIiFwICmhFLjH3338/W7Zs4cUXX8x3U2SSOHToEA8++CDPPPMMgUAg382RSci2ba666iq+8IUvAHDFFVewZcsWvvOd73D33XfnuXXidD//+c955JFH+OlPf8qCBQvYsGEDH/rQh6irq1P9iIiIiMiUoCkOJpGKigrcbvcJV07v6OigpqYmT60SJ3nggQf43e9+x3PPPUd9fX12fU1NDYlEgv7+/pz9j62dmpqak9bW0W1y6Vq3bh2dnZ0sXboUj8eDx+Ph+eef5+tf/zoej4fq6mrVj5xWbW0t8+fPz1k3b948Dh48CIzVwOnev2pqak644GUqlaK3t1c1dIn72Mc+xic+8Qne9a53sWjRIt7znvfw4Q9/mC9+8YuA6kfG70LVit7TREREZKIpoJ1EfD4fV155JatWrcqus22bVatWsXz58jy2TPLNGMMDDzzAE088wbPPPnvCx/KuvPJKvF5vTu20tLRw8ODBbO0sX76czZs355y0PPPMMxQVFZ0QvMil5aabbmLz5s1s2LAhu1x11VWsWLEi+73qR07nuuuuo6WlJWfdzp07aWhoAKCpqYmampqcGhocHGTNmjU5NdTf38+6deuy+zz77LPYts2yZcsm4FlIvkSjUVyu3C6p2+3Gtm1A9SPjd6FqZfny5bzwwgskk8nsPs888wzNzc2a3kBEREQujnxfpUzOzmOPPWb8fr/5yU9+YrZt22buvfdeU1JSknPldJl6/v7v/94UFxebP/7xj6atrS27RKPR7D733XefmTFjhnn22WfNK6+8YpYvX26WL1+e3Z5KpczChQvNLbfcYjZs2GCefvppU1lZaT75yU/m4ylJnt1www3mwQcfzN5W/cjpvPzyy8bj8Zh/+Zd/Mbt27TKPPPKICYVC5uGHH87u89BDD5mSkhLzm9/8xmzatMm8+c1vNk1NTWZkZCS7z2233WauuOIKs2bNGvPiiy+aOXPmmHe/+935eEoyge6++24zbdo087vf/c7s27fP/OpXvzIVFRXmH//xH7P7qH7kqKGhIbN+/Xqzfv16A5ivfvWrZv369ebAgQPGmAtTK/39/aa6utq85z3vMVu2bDGPPfaYCYVC5rvf/e6EP18RERGZGhTQTkLf+MY3zIwZM4zP5zPXXHONeemll/LdJMkz4KTLj3/84+w+IyMj5gMf+IApLS01oVDI3HnnnaatrS3nfvbv329uv/12EwwGTUVFhfnoRz9qksnkBD8bcYLjA1rVj5zJb3/7W7Nw4ULj9/vNZZddZr73ve/lbLdt23z605821dXVxu/3m5tuusm0tLTk7NPT02Pe/e53m3A4bIqKisw999xjhoaGJvJpSB4MDg6aBx980MyYMcMEAgEzc+ZM80//9E8mHo9n91H9yFHPPffcSfs8d999tzHmwtXKxo0bzfXXX2/8fr+ZNm2aeeihhybqKYqIiMgUZBljTH7G7oqIiIiIiIiIiIhMbZqDVkRERERERERERCRPFNCKiIiIiIiIiIiI5IkCWhEREREREREREZE8UUArIiIiIiIiIiIikicKaEVERERERERERETyRAGtiIiIiIiIiIiISJ4ooBURERERERERERHJEwW0IiIiIiIiIiIiInmigFZERMQBLMvi17/+db6bISIiIiIiIhNMAa2IiEx5733ve7Es64Tltttuy3fTRERERERE5BLnyXcDREREnOC2227jxz/+cc46v9+fp9aIiIiIiIjIVKERtCIiImTC2JqampyltLQUyEw/sHLlSm6//XaCwSAzZ87kF7/4Rc7Pb968mde//vUEg0HKy8u59957GR4eztnnRz/6EQsWLMDv91NbW8sDDzyQs727u5s777yTUCjEnDlzePLJJy/ukxYREREREZG8U0ArIiIyDp/+9Kd561vfysaNG1mxYgXvete72L59OwCRSIRbb72V0tJS1q5dy+OPP84f/vCHnAB25cqV3H///dx7771s3ryZJ598ktmzZ+c8xuc//3ne8Y53sGnTJt74xjeyYsUKent7J/R5ioiIiIiIyMSyjDEm340QERHJp/e+9708/PDDBAKBnPWf+tSn+NSnPoVlWdx3332sXLkyu+3aa69l6dKlfPvb3+b73/8+H//4xzl06BAFBQUA/P73v+dNb3oTra2tVFdXM23aNO655x7+z//5Pydtg2VZ/K//9b/453/+ZyAT+obDYZ566inNhSsiIiIiInIJ0xy0IiIiwI033pgTwAKUlZVlv1++fHnOtuXLl7NhwwYAtm/fzpIlS7LhLMB1112Hbdu0tLRgWRatra3cdNNNp23D4sWLs98XFBRQVFREZ2fnuT4lERERERERmQQU0IqIiJAJRI+fcuBCCQaD49rP6/Xm3LYsC9u2L0aTRERERERExCE0B62IiMg4vPTSSyfcnjdvHgDz5s1j48aNRCKR7PY///nPuFwumpubKSwspLGxkVWrVk1om0VERERERMT5NIJWREQEiMfjtLe356zzeDxUVFQA8Pjjj3PVVVdx/fXX88gjj/Dyyy/zwx/+EIAVK1bw2c9+lrvvvpvPfe5zdHV18cEPfpD3vOc9VFdXA/C5z32O++67j6qqKm6//XaGhob485//zAc/+MGJfaIiIiIiIiLiKApoRUREgKeffpra2tqcdc3NzezYsQOAz3/+8zz22GN84AMfoLa2lkcffZT58+cDEAqF+K//+i8efPBBrr76akKhEG9961v56le/mr2vu+++m1gsxr/927/xD//wD1RUVPC2t71t4p6giIiIiIiIOJJljDH5boSIiIiTWZbFE088wVve8pZ8N0VEREREREQuMZqDVkRERERERERERCRPFNCKiIiIiIiIiIiI5InmoBURETkDzQYkIiIiIiIiF4tG0IqIiIiIiIiIiIjkiQJaERERERERERERkTxRQCsiIiIiIiIiIiKSJwpoRURERERERERERPJEAa2IiIiIiIiIiIhIniigFREREREREREREckTBbQiIiIiIiIiIiIieaKAVkRERERERERERCRP/n/8CSXc2dBQqwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] diff --git a/placement.py b/placement.py index 1da3ab0..f846cc2 100644 --- a/placement.py +++ b/placement.py @@ -509,7 +509,7 @@ def train_placement( # Create optimizer optimizer = optim.Adam([cell_positions], lr=lr) - optim.lr_scheduler.ReduceLROnPlateau(optimizer=optimizer) + scheduler = optim.lr_scheduler.ReduceLROnPlateau(optimizer=optimizer) # Track loss history history_run_metadata = { @@ -567,6 +567,7 @@ def train_placement( # Update positions optimizer.step() + scheduler.step(total_loss.item()) updated_cell_features = cell_features.clone() updated_cell_features[:, 2:4] = cell_positions.detach() From a4c6cc0f91d8a0445c4a414e4eb2c4a3eb113dd5 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 20 Apr 2026 02:43:53 -0700 Subject: [PATCH 19/48] add hyperparameter search --- arg_parse_util.py | 81 ++++++++++++++++ hyperparameter_search.py | 164 ++++++++++++++++++++++++++++++++ learning_rate_scheduler_util.py | 47 +++++++++ placement.py | 146 +++++++++++++++++++--------- test.py | 100 +++++++++++-------- 5 files changed, 457 insertions(+), 81 deletions(-) create mode 100644 hyperparameter_search.py create mode 100644 learning_rate_scheduler_util.py diff --git a/arg_parse_util.py b/arg_parse_util.py index 2a0fd58..c14fb52 100644 --- a/arg_parse_util.py +++ b/arg_parse_util.py @@ -14,4 +14,85 @@ def parse_args(): default="", help="Optional tag to include in the profile output filename.", ) + parser.add_argument( + "--num-epochs", + type=int, + default=1000, + help="Number of optimization epochs for a regular training run.", + ) + parser.add_argument( + "--lr", + type=float, + default=0.1, + help="Learning rate for the Adam optimizer.", + ) + parser.add_argument( + "--lambda-wirelength", + type=float, + default=3.0, + help="Weight applied to the wirelength term.", + ) + parser.add_argument( + "--lambda-overlap", + type=float, + default=1.0, + help="Weight applied to the overlap term.", + ) + parser.add_argument( + "--scheduler", + choices=["plateau", "cosine", "none"], + default="plateau", + help="Learning-rate scheduler to use during training.", + ) + parser.add_argument( + "--scheduler-patience", + type=int, + default=50, + help="Patience for ReduceLROnPlateau.", + ) + parser.add_argument( + "--scheduler-factor", + type=float, + default=0.5, + help="Decay factor for ReduceLROnPlateau.", + ) + parser.add_argument( + "--scheduler-eta-min", + type=float, + default=1e-4, + help="Minimum learning rate for cosine annealing.", + ) + parser.add_argument( + "--optuna", + action="store_true", + help="Run Optuna hyperparameter search instead of a single training run.", + ) + parser.add_argument( + "--optuna-trials", + type=int, + default=25, + help="Number of Optuna trials to execute.", + ) + parser.add_argument( + "--optuna-epochs", + type=int, + default=400, + help="Number of epochs per Optuna trial.", + ) + parser.add_argument( + "--optuna-study-name", + default="placement_hparam_search", + help="Study name used by Optuna.", + ) + parser.add_argument( + "--optuna-storage", + default="", + help="Optional Optuna storage URL, for example sqlite:///optuna.db.", + ) + parser.add_argument( + "--track-loss-history", + action=argparse.BooleanOptionalAction, + default=True, + help="Enable or disable loss-history collection and persistence.", + ) return parser.parse_args() diff --git a/hyperparameter_search.py b/hyperparameter_search.py new file mode 100644 index 0000000..4fe49a8 --- /dev/null +++ b/hyperparameter_search.py @@ -0,0 +1,164 @@ +DEFAULT_OPTUNA_TUNING_CASES = [ + (2, 20, 1201), + (3, 40, 1202), + (4, 75, 1203), +] + + +def run_optuna_search( + args, + *, + get_best_device, + seed_torch, + generate_placement_input, + initialize_cell_positions, + train_placement, + calculate_normalized_metrics, + tuning_cases=None, +): + """Run Optuna-based hyperparameter search.""" + try: + import optuna + except ImportError as exc: + raise RuntimeError( + "Optuna is not installed. Install it with `pip install optuna` to use --optuna." + ) from exc + + tuning_cases = tuning_cases or DEFAULT_OPTUNA_TUNING_CASES + device = get_best_device() + + def objective(trial): + lambda_wirelength = trial.suggest_float( + "lambda_wirelength", + 0.1, + 10.0, + log=True, + ) + lambda_overlap = trial.suggest_float( + "lambda_overlap", + 0.5, + 50.0, + log=True, + ) + lr = trial.suggest_float("lr", 1e-3, 3e-1, log=True) + scheduler_name = trial.suggest_categorical( + "scheduler", + ["plateau", "cosine", "none"], + ) + + scheduler_kwargs = {} + if scheduler_name == "plateau": + scheduler_kwargs["factor"] = trial.suggest_float( + "scheduler_factor", + 0.2, + 0.8, + ) + scheduler_kwargs["patience"] = trial.suggest_int( + "scheduler_patience", + 20, + 120, + ) + elif scheduler_name == "cosine": + eta_min_ratio = trial.suggest_float( + "scheduler_eta_min_ratio", + 1e-4, + 0.2, + log=True, + ) + scheduler_kwargs["eta_min"] = lr * eta_min_ratio + + overlap_scores = [] + wirelength_scores = [] + + for case_idx, (num_macros, num_std_cells, seed) in enumerate( + tuning_cases, + start=1, + ): + seed_torch(seed) + cell_features, pin_features, edge_list = generate_placement_input( + num_macros, + num_std_cells, + device=device, + verbose=False, + ) + initialize_cell_positions(cell_features) + + result = train_placement( + cell_features, + pin_features, + edge_list, + num_epochs=args.optuna_epochs, + lr=lr, + lambda_wirelength=lambda_wirelength, + lambda_overlap=lambda_overlap, + scheduler_name=scheduler_name, + scheduler_kwargs=scheduler_kwargs, + track_loss_history=args.track_loss_history, + verbose=False, + run_metadata={ + "runner": "optuna", + "trial_number": trial.number, + "seed": seed, + "num_macros": num_macros, + "num_std_cells": num_std_cells, + }, + ) + + metrics = calculate_normalized_metrics( + result["final_cell_features"], + pin_features, + edge_list, + ) + overlap_scores.append(metrics["overlap_ratio"]) + wirelength_scores.append(metrics["normalized_wl"]) + + partial_score = ( + sum(overlap_scores) / len(overlap_scores) * 1000.0 + + sum(wirelength_scores) / len(wirelength_scores) + ) + trial.report(partial_score, step=case_idx) + if trial.should_prune(): + raise optuna.TrialPruned() + + avg_overlap = sum(overlap_scores) / len(overlap_scores) + avg_wirelength = sum(wirelength_scores) / len(wirelength_scores) + objective_value = avg_overlap * 1000.0 + avg_wirelength + + trial.set_user_attr("avg_overlap", avg_overlap) + trial.set_user_attr("avg_wirelength", avg_wirelength) + return objective_value + + storage = args.optuna_storage or None + study = optuna.create_study( + direction="minimize", + study_name=args.optuna_study_name, + storage=storage, + load_if_exists=bool(storage), + sampler=optuna.samplers.TPESampler(seed=42), + pruner=optuna.pruners.MedianPruner(n_startup_trials=5, n_warmup_steps=1), + ) + + print("=" * 70) + print("RUNNING OPTUNA SEARCH") + print("=" * 70) + print(f"Trials: {args.optuna_trials}") + print(f"Epochs per trial: {args.optuna_epochs}") + print(f"Tuning cases: {tuning_cases}") + print(f"Device: {device}") + + study.optimize(objective, n_trials=args.optuna_trials) + + best_trial = study.best_trial + print("\n" + "=" * 70) + print("BEST OPTUNA TRIAL") + print("=" * 70) + print(f"Objective: {best_trial.value:.6f}") + print( + f"Average Overlap: {best_trial.user_attrs.get('avg_overlap', float('nan')):.6f}" + ) + print( + f"Average Wirelength: {best_trial.user_attrs.get('avg_wirelength', float('nan')):.6f}" + ) + print("Best parameters:") + for key, value in best_trial.params.items(): + print(f" {key}: {value}") diff --git a/learning_rate_scheduler_util.py b/learning_rate_scheduler_util.py new file mode 100644 index 0000000..2404175 --- /dev/null +++ b/learning_rate_scheduler_util.py @@ -0,0 +1,47 @@ +import torch.optim as optim + + +def build_scheduler_kwargs_from_args(args): + """Translate CLI scheduler arguments into scheduler kwargs.""" + if args.scheduler == "plateau": + return { + "factor": args.scheduler_factor, + "patience": args.scheduler_patience, + } + if args.scheduler == "cosine": + return { + "eta_min": args.scheduler_eta_min, + } + return {} + + +def create_lr_scheduler( + optimizer, + scheduler_name, + num_epochs, + scheduler_kwargs=None, +): + """Build the requested learning-rate scheduler.""" + scheduler_kwargs = dict(scheduler_kwargs or {}) + + if scheduler_name == "none": + return None, False + + if scheduler_name == "plateau": + scheduler = optim.lr_scheduler.ReduceLROnPlateau( + optimizer=optimizer, + mode="min", + factor=scheduler_kwargs.get("factor", 0.5), + patience=scheduler_kwargs.get("patience", 50), + ) + return scheduler, True + + if scheduler_name == "cosine": + scheduler = optim.lr_scheduler.CosineAnnealingLR( + optimizer, + T_max=max(1, num_epochs), + eta_min=scheduler_kwargs.get("eta_min", 1e-4), + ) + return scheduler, False + + raise ValueError(f"Unsupported scheduler: {scheduler_name}") diff --git a/placement.py b/placement.py index f846cc2..31f1e44 100644 --- a/placement.py +++ b/placement.py @@ -46,6 +46,11 @@ import torch.optim as optim from arg_parse_util import parse_args +from hyperparameter_search import run_optuna_search +from learning_rate_scheduler_util import ( + build_scheduler_kwargs_from_args, + create_lr_scheduler, +) from loss_tracking_utils import create_loss_tracking_db, save_loss_history_sqlite from profiler_helper import run_with_optional_profile @@ -105,10 +110,9 @@ class PinFeatureIdx(IntEnum): # Output directory OUTPUT_DIR = os.path.dirname(os.path.abspath(__file__)) - # ======= SETUP ======= -def generate_placement_input(num_macros, num_std_cells, device=None): +def generate_placement_input(num_macros, num_std_cells, device=None, verbose=True): """Generate synthetic placement input data. Args: @@ -284,15 +288,29 @@ def generate_placement_input(num_macros, num_std_cells, device=None): else: edge_list = torch.zeros((0, 2), dtype=torch.long, device=device) - print(f"\nGenerated placement data:") - print(f" Total cells: {total_cells}") - print(f" Total pins: {total_pins}") - print(f" Total edges: {len(edge_list)}") - print(f" Average edges per pin: {2 * len(edge_list) / total_pins:.2f}") + if verbose: + print(f"\nGenerated placement data:") + print(f" Total cells: {total_cells}") + print(f" Total pins: {total_pins}") + print(f" Total edges: {len(edge_list)}") + print(f" Average edges per pin: {2 * len(edge_list) / total_pins:.2f}") return cell_features, pin_features, edge_list +def initialize_cell_positions(cell_features, spread_scale=0.6): + """Initialize cell centers with a random radial spread.""" + total_cells = cell_features.shape[0] + total_area = cell_features[:, CellFeatureIdx.AREA].sum().item() + spread_radius = max((total_area ** 0.5) * spread_scale, 1.0) + + angles = torch.rand(total_cells, device=cell_features.device) * 2 * torch.pi + radii = torch.rand(total_cells, device=cell_features.device) * spread_radius + + cell_features[:, CellFeatureIdx.X] = radii * torch.cos(angles) + cell_features[:, CellFeatureIdx.Y] = radii * torch.sin(angles) + + def total_wire_length(cell_features, pin_features, edge_list): # the real goal seem to be to reduce the total wirelength. # attraction loss can be a training method. @@ -470,6 +488,9 @@ def train_placement( lr=0.1, lambda_wirelength=3.0, lambda_overlap=1.0, + scheduler_name="plateau", + scheduler_kwargs=None, + track_loss_history=True, verbose=True, log_interval=100, run_metadata=None, @@ -484,6 +505,9 @@ def train_placement( lr: Learning rate for Adam optimizer lambda_wirelength: Weight for wirelength loss lambda_overlap: Weight for overlap loss + scheduler_name: Learning-rate scheduler name + scheduler_kwargs: Scheduler-specific keyword arguments + track_loss_history: Whether to collect per-epoch loss history verbose: Whether to print progress log_interval: How often to print progress @@ -508,10 +532,15 @@ def train_placement( cell_positions.requires_grad_(True) # Create optimizer + scheduler_kwargs = dict(scheduler_kwargs or {}) optimizer = optim.Adam([cell_positions], lr=lr) - scheduler = optim.lr_scheduler.ReduceLROnPlateau(optimizer=optimizer) + scheduler, scheduler_uses_metric = create_lr_scheduler( + optimizer, + scheduler_name=scheduler_name, + num_epochs=num_epochs, + scheduler_kwargs=scheduler_kwargs, + ) - # Track loss history history_run_metadata = { "run_label": "train_placement", "run_started_at": datetime.now().isoformat(timespec="seconds"), @@ -520,6 +549,9 @@ def train_placement( "lr": lr, "lambda_wirelength": lambda_wirelength, "lambda_overlap": lambda_overlap, + "scheduler_name": scheduler_name, + "scheduler_kwargs": scheduler_kwargs, + "track_loss_history": track_loss_history, "log_interval": log_interval, "verbose": verbose, "total_cells": int(cell_features.shape[0]), @@ -529,15 +561,18 @@ def train_placement( if run_metadata: history_run_metadata.update(run_metadata) - loss_history = { - "run_metadata": history_run_metadata, - "total_loss": [], - "wirelength_loss": [], - "overlap_loss": [], - "overlap_count": [], - "total_overlap_area": [], - "max_overlap_area": [], - } + loss_history = None + if track_loss_history: + loss_history = { + "run_metadata": history_run_metadata, + "total_loss": [], + "wirelength_loss": [], + "overlap_loss": [], + "overlap_count": [], + "total_overlap_area": [], + "max_overlap_area": [], + "learning_rate": [], + } # Training loop for epoch in range(num_epochs): @@ -567,21 +602,26 @@ def train_placement( # Update positions optimizer.step() - scheduler.step(total_loss.item()) + if scheduler is not None: + if scheduler_uses_metric: + scheduler.step(total_loss.item()) + else: + scheduler.step() updated_cell_features = cell_features.clone() updated_cell_features[:, 2:4] = cell_positions.detach() overlap_metrics = calculate_overlap_metrics(updated_cell_features) - # Record losses - loss_history["total_loss"].append(total_loss.item()) - loss_history["wirelength_loss"].append(wl_loss.item()) - loss_history["overlap_loss"].append(overlap_loss.item()) - loss_history["overlap_count"].append(overlap_metrics["overlap_count"]) - loss_history["total_overlap_area"].append( - overlap_metrics["total_overlap_area"] - ) - loss_history["max_overlap_area"].append(overlap_metrics["max_overlap_area"]) + if loss_history is not None: + loss_history["total_loss"].append(total_loss.item()) + loss_history["wirelength_loss"].append(wl_loss.item()) + loss_history["overlap_loss"].append(overlap_loss.item()) + loss_history["overlap_count"].append(overlap_metrics["overlap_count"]) + loss_history["total_overlap_area"].append( + overlap_metrics["total_overlap_area"] + ) + loss_history["max_overlap_area"].append(overlap_metrics["max_overlap_area"]) + loss_history["learning_rate"].append(optimizer.param_groups[0]["lr"]) # Log progress if verbose and (epoch % log_interval == 0 or epoch == num_epochs - 1): @@ -589,6 +629,7 @@ def train_placement( print(f" Total Loss: {total_loss.item():.6f}") print(f" Wirelength Loss: {wl_loss.item():.6f}") print(f" Overlap Loss: {overlap_loss.item():.6f}") + print(f" Learning Rate: {optimizer.param_groups[0]['lr']:.6f}") print(f" Overlap Count: {overlap_metrics['overlap_count']}") print( f" Total Overlap Area: {overlap_metrics['total_overlap_area']:.6f}" @@ -853,8 +894,20 @@ def plot_placement( # ======= MAIN FUNCTION ======= -def main(): +def main(args): """Main function demonstrating the placement optimization challenge.""" + if args.optuna: + run_optuna_search( + args, + get_best_device=get_best_device, + seed_torch=seed_torch, + generate_placement_input=generate_placement_input, + initialize_cell_positions=initialize_cell_positions, + train_placement=train_placement, + calculate_normalized_metrics=calculate_normalized_metrics, + ) + return + print("=" * 70) print("VLSI CELL PLACEMENT OPTIMIZATION CHALLENGE") print("=" * 70) @@ -881,13 +934,7 @@ def main(): ) # Initialize positions with random spread to reduce initial overlaps - total_cells = cell_features.shape[0] - spread_radius = 30.0 - angles = torch.rand(total_cells, device=device) * 2 * 3.14159 - radii = torch.rand(total_cells, device=device) * spread_radius - - cell_features[:, 2] = radii * torch.cos(angles) - cell_features[:, 3] = radii * torch.sin(angles) + initialize_cell_positions(cell_features) # Calculate initial metrics print("\n" + "=" * 70) @@ -904,12 +951,21 @@ def main(): print("RUNNING OPTIMIZATION") print("=" * 70) - loss_tracking_db_path = create_loss_tracking_db(OUTPUT_DIR) + loss_tracking_db_path = None + if args.track_loss_history: + loss_tracking_db_path = create_loss_tracking_db(OUTPUT_DIR) result = train_placement( cell_features, pin_features, edge_list, + num_epochs=args.num_epochs, + lr=args.lr, + lambda_wirelength=args.lambda_wirelength, + lambda_overlap=args.lambda_overlap, + scheduler_name=args.scheduler, + scheduler_kwargs=build_scheduler_kwargs_from_args(args), + track_loss_history=args.track_loss_history, verbose=True, log_interval=200, run_metadata={ @@ -919,11 +975,14 @@ def main(): "num_std_cells": num_std_cells, }, ) - loss_history_path = save_loss_history_sqlite( - result["loss_history"], - loss_tracking_db_path, - ) - print(f"Loss history saved to: {loss_history_path}") + if args.track_loss_history: + loss_history_path = save_loss_history_sqlite( + result["loss_history"], + loss_tracking_db_path, + ) + print(f"Loss history saved to: {loss_history_path}") + else: + print("Loss history tracking disabled.") # Calculate final metrics (both detailed and normalized) print("\n" + "=" * 70) @@ -976,4 +1035,5 @@ def main(): ) if __name__ == "__main__": - run_with_optional_profile(main, parse_args(), OUTPUT_DIR) + args = parse_args() + run_with_optional_profile(lambda: main(args), args, OUTPUT_DIR) diff --git a/test.py b/test.py index dae227d..0ae1ffa 100644 --- a/test.py +++ b/test.py @@ -6,22 +6,23 @@ of various sizes and reports metrics for leaderboard submission. Usage: - python test_placement.py + python test.py Metrics Reported: - Average Overlap: (num cells with overlaps / total num cells) - Average Wirelength: (total wirelength / num nets) / sqrt(total area) This normalization allows fair comparison across different design sizes. -Note: This test uses the default hyperparameters from train_placement() in -vb_playground.py. The challenge is to implement the overlap loss function, -not to tune hyperparameters. +Note: This test reuses the shared CLI hyperparameter options from placement.py +and evaluates them across the benchmark test cases. """ import time from concurrent.futures import ProcessPoolExecutor, as_completed -import torch +from arg_parse_util import parse_args +from learning_rate_scheduler_util import build_scheduler_kwargs_from_args +from profiler_helper import run_with_optional_profile # Import from the challenge file from placement import ( @@ -29,6 +30,7 @@ calculate_normalized_metrics, generate_placement_input, get_best_device, + initialize_cell_positions, seed_torch, train_placement, ) @@ -61,16 +63,16 @@ def run_placement_test( num_macros, num_std_cells, loss_tracking_db_path, + training_config, seed=None, ): """Run placement optimization on a single test case. - Uses default hyperparameters from train_placement() function. - Args: test_id: Test case identifier num_macros: Number of macro cells num_std_cells: Number of standard cells + training_config: Hyperparameters for train_placement seed: Random seed for reproducibility Returns: @@ -90,22 +92,21 @@ def run_placement_test( ) # Initialize positions with random spread - total_cells = cell_features.shape[0] - total_area = cell_features[:, 0].sum().item() - spread_radius = (total_area ** 0.5) * 0.6 - - angles = torch.rand(total_cells, device=device) * 2 * 3.14159 - radii = torch.rand(total_cells, device=device) * spread_radius - - cell_features[:, 2] = radii * torch.cos(angles) - cell_features[:, 3] = radii * torch.sin(angles) + initialize_cell_positions(cell_features) - # Run optimization with default hyperparameters + # Run optimization with the selected hyperparameters start_time = time.time() result = train_placement( cell_features, pin_features, edge_list, + num_epochs=training_config["num_epochs"], + lr=training_config["lr"], + lambda_wirelength=training_config["lambda_wirelength"], + lambda_overlap=training_config["lambda_overlap"], + scheduler_name=training_config["scheduler_name"], + scheduler_kwargs=training_config["scheduler_kwargs"], + track_loss_history=training_config["track_loss_history"], verbose=False, # Suppress per-epoch output run_metadata={ "runner": "test.py", @@ -116,10 +117,12 @@ def run_placement_test( }, ) elapsed_time = time.time() - start_time - loss_history_path = save_loss_history_sqlite( - result["loss_history"], - loss_tracking_db_path, - ) + loss_history_path = None + if training_config["track_loss_history"]: + loss_history_path = save_loss_history_sqlite( + result["loss_history"], + loss_tracking_db_path, + ) # Calculate final metrics using shared implementation final_cell_features = result["final_cell_features"] @@ -140,38 +143,57 @@ def run_placement_test( "overlap_ratio": metrics["overlap_ratio"], "normalized_wl": metrics["normalized_wl"], } - - -def run_placement_test_case(test_case, loss_tracking_db_path): - """Unpack a test-case tuple for multiprocessing execution.""" +def run_placement_test_case_with_config(test_case, loss_tracking_db_path, training_config): + """Unpack a test-case tuple for multiprocessing execution with config.""" test_id, num_macros, num_std_cells, seed = test_case return run_placement_test( test_id, num_macros, num_std_cells, loss_tracking_db_path, + training_config, seed, ) -def run_all_tests(): +def run_all_tests(args): """Run all test cases and compute aggregate metrics. - Uses default hyperparameters from train_placement() function. - Returns: Dictionary with all test results and aggregate statistics """ + training_config = { + "num_epochs": args.num_epochs, + "lr": args.lr, + "lambda_wirelength": args.lambda_wirelength, + "lambda_overlap": args.lambda_overlap, + "scheduler_name": args.scheduler, + "scheduler_kwargs": build_scheduler_kwargs_from_args(args), + "track_loss_history": args.track_loss_history, + } + print("=" * 70) print("PLACEMENT CHALLENGE TEST SUITE") print("=" * 70) print(f"\nRunning {len(TEST_CASES)} test cases with various netlist sizes...") - print("Using default hyperparameters from train_placement()") + print("Using hyperparameters:") + print(f" num_epochs: {training_config['num_epochs']}") + print(f" lr: {training_config['lr']}") + print(f" lambda_wirelength: {training_config['lambda_wirelength']}") + print(f" lambda_overlap: {training_config['lambda_overlap']}") + print(f" scheduler: {training_config['scheduler_name']}") + print(f" scheduler_kwargs: {training_config['scheduler_kwargs']}") + print(f" track_loss_history: {training_config['track_loss_history']}") print() - loss_tracking_db_path = create_loss_tracking_db(OUTPUT_DIR) - print(f"Writing loss history to: {loss_tracking_db_path}") - print() + loss_tracking_db_path = None + if args.track_loss_history: + loss_tracking_db_path = create_loss_tracking_db(OUTPUT_DIR) + print(f"Writing loss history to: {loss_tracking_db_path}") + print() + else: + print("Loss history tracking disabled.") + print() max_workers = 4 @@ -191,9 +213,10 @@ def run_all_tests(): with ProcessPoolExecutor(max_workers=max_workers) as executor: future_to_test_case = { executor.submit( - run_placement_test_case, + run_placement_test_case_with_config, test_case, loss_tracking_db_path, + training_config, ): test_case for test_case in TEST_CASES } @@ -214,7 +237,8 @@ def run_all_tests(): ) print(f" Normalized WL: {result['normalized_wl']:.4f}") print(f" Time: {result['elapsed_time']:.2f}s") - print(f" History: {result['loss_history_path']}") + if result["loss_history_path"] is not None: + print(f" History: {result['loss_history_path']}") print(f" Status: {status}") print() @@ -244,11 +268,11 @@ def run_all_tests(): } -def main(): +def main(args): """Main entry point for the test suite.""" - # Run all tests with default hyperparameters - run_all_tests() + run_all_tests(args) if __name__ == "__main__": - main() + args = parse_args() + run_with_optional_profile(lambda: main(args), args, OUTPUT_DIR) From 9e723a3ee2488824f1201e460d8122ee88b13471 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 20 Apr 2026 02:48:41 -0700 Subject: [PATCH 20/48] enable test 10 --- test.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test.py b/test.py index 0ae1ffa..aae2b58 100644 --- a/test.py +++ b/test.py @@ -51,7 +51,7 @@ (7, 5, 150, 1007), (8, 7, 150, 1008), (9, 8, 200, 1009), - # (10, 10, 2000, 1010), + (10, 10, 2000, 1010), # Realistic designs # (11, 10, 10000, 1011), # (12, 10, 100000, 1012), From f2380a0f32bb0a30a6c9c3eff6fe212ddb09fa94 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 20 Apr 2026 03:25:44 -0700 Subject: [PATCH 21/48] search over types of schedular as well --- arg_parse_util.py | 34 ++++++++++++++- hyperparameter_search.py | 31 ++++---------- learning_rate_scheduler_util.py | 74 +++++++++++++++++++++++++++++++++ placement.py | 8 ++-- 4 files changed, 118 insertions(+), 29 deletions(-) diff --git a/arg_parse_util.py b/arg_parse_util.py index c14fb52..42cdc8e 100644 --- a/arg_parse_util.py +++ b/arg_parse_util.py @@ -1,5 +1,7 @@ import argparse +from learning_rate_scheduler_util import SCHEDULER_CHOICES + def parse_args(): """Parse command line arguments for optional profiling.""" @@ -20,6 +22,24 @@ def parse_args(): default=1000, help="Number of optimization epochs for a regular training run.", ) + parser.add_argument( + "--num-macros", + type=int, + default=3, + help="Number of macro cells to generate for a placement run.", + ) + parser.add_argument( + "--num-std-cells", + type=int, + default=10, + help="Number of standard cells to generate for a placement run.", + ) + parser.add_argument( + "--seed", + type=int, + default=42, + help="Random seed used to generate and initialize the placement problem.", + ) parser.add_argument( "--lr", type=float, @@ -40,7 +60,7 @@ def parse_args(): ) parser.add_argument( "--scheduler", - choices=["plateau", "cosine", "none"], + choices=SCHEDULER_CHOICES, default="plateau", help="Learning-rate scheduler to use during training.", ) @@ -62,6 +82,18 @@ def parse_args(): default=1e-4, help="Minimum learning rate for cosine annealing.", ) + parser.add_argument( + "--scheduler-step-size", + type=int, + default=100, + help="Step size in epochs for StepLR.", + ) + parser.add_argument( + "--scheduler-gamma", + type=float, + default=0.95, + help="Gamma decay used by StepLR and ExponentialLR.", + ) parser.add_argument( "--optuna", action="store_true", diff --git a/hyperparameter_search.py b/hyperparameter_search.py index 4fe49a8..69e03d3 100644 --- a/hyperparameter_search.py +++ b/hyperparameter_search.py @@ -1,3 +1,6 @@ +from learning_rate_scheduler_util import suggest_scheduler_config + + DEFAULT_OPTUNA_TUNING_CASES = [ (2, 20, 1201), (3, 40, 1202), @@ -41,32 +44,12 @@ def objective(trial): log=True, ) lr = trial.suggest_float("lr", 1e-3, 3e-1, log=True) - scheduler_name = trial.suggest_categorical( - "scheduler", - ["plateau", "cosine", "none"], + scheduler_name, scheduler_kwargs = suggest_scheduler_config( + trial, + lr=lr, + num_epochs=args.optuna_epochs, ) - scheduler_kwargs = {} - if scheduler_name == "plateau": - scheduler_kwargs["factor"] = trial.suggest_float( - "scheduler_factor", - 0.2, - 0.8, - ) - scheduler_kwargs["patience"] = trial.suggest_int( - "scheduler_patience", - 20, - 120, - ) - elif scheduler_name == "cosine": - eta_min_ratio = trial.suggest_float( - "scheduler_eta_min_ratio", - 1e-4, - 0.2, - log=True, - ) - scheduler_kwargs["eta_min"] = lr * eta_min_ratio - overlap_scores = [] wirelength_scores = [] diff --git a/learning_rate_scheduler_util.py b/learning_rate_scheduler_util.py index 2404175..f6b951a 100644 --- a/learning_rate_scheduler_util.py +++ b/learning_rate_scheduler_util.py @@ -1,5 +1,7 @@ import torch.optim as optim +SCHEDULER_CHOICES = ("plateau", "cosine", "step", "exponential", "none") + def build_scheduler_kwargs_from_args(args): """Translate CLI scheduler arguments into scheduler kwargs.""" @@ -12,9 +14,66 @@ def build_scheduler_kwargs_from_args(args): return { "eta_min": args.scheduler_eta_min, } + if args.scheduler == "step": + return { + "step_size": args.scheduler_step_size, + "gamma": args.scheduler_gamma, + } + if args.scheduler == "exponential": + return { + "gamma": args.scheduler_gamma, + } return {} +def suggest_scheduler_config(trial, lr, num_epochs): + """Sample a scheduler configuration for Optuna.""" + scheduler_name = trial.suggest_categorical("scheduler", list(SCHEDULER_CHOICES)) + scheduler_kwargs = {} + + if scheduler_name == "plateau": + max_patience = max(20, min(120, max(1, num_epochs - 1))) + scheduler_kwargs["factor"] = trial.suggest_float( + "scheduler_factor", + 0.2, + 0.8, + ) + scheduler_kwargs["patience"] = trial.suggest_int( + "scheduler_patience", + 20, + max_patience, + ) + elif scheduler_name == "cosine": + eta_min_ratio = trial.suggest_float( + "scheduler_eta_min_ratio", + 1e-4, + 0.2, + log=True, + ) + scheduler_kwargs["eta_min"] = lr * eta_min_ratio + elif scheduler_name == "step": + max_step_size = max(10, num_epochs) + scheduler_kwargs["step_size"] = trial.suggest_int( + "scheduler_step_size", + 10, + max_step_size, + log=True, + ) + scheduler_kwargs["gamma"] = trial.suggest_float( + "scheduler_gamma", + 0.1, + 0.95, + ) + elif scheduler_name == "exponential": + scheduler_kwargs["gamma"] = trial.suggest_float( + "scheduler_gamma", + 0.95, + 0.9999, + ) + + return scheduler_name, scheduler_kwargs + + def create_lr_scheduler( optimizer, scheduler_name, @@ -44,4 +103,19 @@ def create_lr_scheduler( ) return scheduler, False + if scheduler_name == "step": + scheduler = optim.lr_scheduler.StepLR( + optimizer, + step_size=max(1, scheduler_kwargs.get("step_size", 100)), + gamma=scheduler_kwargs.get("gamma", 0.5), + ) + return scheduler, False + + if scheduler_name == "exponential": + scheduler = optim.lr_scheduler.ExponentialLR( + optimizer, + gamma=scheduler_kwargs.get("gamma", 0.99), + ) + return scheduler, False + raise ValueError(f"Unsupported scheduler: {scheduler_name}") diff --git a/placement.py b/placement.py index 31f1e44..e4413e4 100644 --- a/placement.py +++ b/placement.py @@ -916,11 +916,11 @@ def main(args): # Set random seed for reproducibility device = get_best_device() - seed_torch(42) + seed_torch(args.seed) # Generate placement problem - num_macros = 3 - num_std_cells = 10 + num_macros = args.num_macros + num_std_cells = args.num_std_cells print(f"Generating placement problem:") print(f" - {num_macros} macros") @@ -970,7 +970,7 @@ def main(args): log_interval=200, run_metadata={ "runner": "placement.main", - "seed": 42, + "seed": args.seed, "num_macros": num_macros, "num_std_cells": num_std_cells, }, From dc09974a4bc238770254bb462505a2ddbfd77c43 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Tue, 21 Apr 2026 17:15:27 -0700 Subject: [PATCH 22/48] add pytorch profiler instrumentation, fix overlap metrics calculations per epoch in the training loop --- arg_parse_util.py | 66 ++++++++++++++++ placement.py | 192 ++++++++++++++++++++++++++++++---------------- test.py | 46 +++++------ 3 files changed, 211 insertions(+), 93 deletions(-) diff --git a/arg_parse_util.py b/arg_parse_util.py index 42cdc8e..fe7079c 100644 --- a/arg_parse_util.py +++ b/arg_parse_util.py @@ -1,5 +1,6 @@ import argparse +from benchmark_test_cases import TEST_CASES_BY_ID from learning_rate_scheduler_util import SCHEDULER_CHOICES @@ -16,6 +17,59 @@ def parse_args(): default="", help="Optional tag to include in the profile output filename.", ) + parser.add_argument( + "--torch-profile", + action="store_true", + help="Enable torch.profiler trace capture during training.", + ) + parser.add_argument( + "--torch-profile-wait", + type=int, + default=1, + help="Number of initial training steps to skip before torch profiler warmup.", + ) + parser.add_argument( + "--torch-profile-warmup", + type=int, + default=1, + help="Number of warmup steps for torch profiler.", + ) + parser.add_argument( + "--torch-profile-active", + type=int, + default=3, + help="Number of active recording steps for torch profiler.", + ) + parser.add_argument( + "--torch-profile-repeat", + type=int, + default=1, + help="Number of wait/warmup/active cycles to record. Use 0 to repeat until the run ends.", + ) + parser.add_argument( + "--torch-profile-record-shapes", + action=argparse.BooleanOptionalAction, + default=True, + help="Enable or disable input-shape recording in torch profiler.", + ) + parser.add_argument( + "--torch-profile-memory", + action=argparse.BooleanOptionalAction, + default=True, + help="Enable or disable memory tracking in torch profiler.", + ) + parser.add_argument( + "--torch-profile-with-stack", + action=argparse.BooleanOptionalAction, + default=True, + help="Enable or disable stack trace capture in torch profiler.", + ) + parser.add_argument( + "--torch-profile-acc-events", + action=argparse.BooleanOptionalAction, + default=False, + help="Accumulate profiler events across schedule cycles to avoid cycle-reset warnings.", + ) parser.add_argument( "--num-epochs", type=int, @@ -40,6 +94,12 @@ def parse_args(): default=42, help="Random seed used to generate and initialize the placement problem.", ) + parser.add_argument( + "--test-case-id", + type=int, + choices=sorted(TEST_CASES_BY_ID), + help="Optional benchmark test case to load. Overrides --num-macros, --num-std-cells, and --seed.", + ) parser.add_argument( "--lr", type=float, @@ -127,4 +187,10 @@ def parse_args(): default=True, help="Enable or disable loss-history collection and persistence.", ) + parser.add_argument( + "--track-overlap-metrics", + action=argparse.BooleanOptionalAction, + default=False, + help="Enable or disable per-epoch overlap-metric collection for loss tracking.", + ) return parser.parse_args() diff --git a/placement.py b/placement.py index e4413e4..f60eec2 100644 --- a/placement.py +++ b/placement.py @@ -46,13 +46,18 @@ import torch.optim as optim from arg_parse_util import parse_args +from benchmark_test_cases import TEST_CASES_BY_ID from hyperparameter_search import run_optuna_search from learning_rate_scheduler_util import ( build_scheduler_kwargs_from_args, create_lr_scheduler, ) from loss_tracking_utils import create_loss_tracking_db, save_loss_history_sqlite -from profiler_helper import run_with_optional_profile +from torch_profiler_util import ( + build_torch_profiler_config_from_args, + create_torch_profiler_session, + run_with_optional_profile, +) def get_best_device(): @@ -494,6 +499,9 @@ def train_placement( verbose=True, log_interval=100, run_metadata=None, + torch_profiler_config=None, + torch_profile_output_dir=None, + track_overlap_metrics=False, ): """Train the placement optimization using gradient descent. @@ -510,6 +518,10 @@ def train_placement( track_loss_history: Whether to collect per-epoch loss history verbose: Whether to print progress log_interval: How often to print progress + run_metadata: Optional metadata describing the run + torch_profiler_config: Optional torch profiler configuration + torch_profile_output_dir: Base directory for torch profiler artifacts + track_overlap_metrics: Whether to collect per-epoch overlap metrics Returns: Dictionary with: @@ -552,6 +564,7 @@ def train_placement( "scheduler_name": scheduler_name, "scheduler_kwargs": scheduler_kwargs, "track_loss_history": track_loss_history, + "track_overlap_metrics": track_overlap_metrics, "log_interval": log_interval, "verbose": verbose, "total_cells": int(cell_features.shape[0]), @@ -568,72 +581,99 @@ def train_placement( "total_loss": [], "wirelength_loss": [], "overlap_loss": [], - "overlap_count": [], - "total_overlap_area": [], - "max_overlap_area": [], "learning_rate": [], } + if track_overlap_metrics: + loss_history.update( + { + "overlap_count": [], + "total_overlap_area": [], + "max_overlap_area": [], + } + ) # Training loop - for epoch in range(num_epochs): - - optimizer.zero_grad() - - # Create cell_features with current positions - cell_features_current = cell_features.clone() - cell_features_current[:, 2:4] = cell_positions - - # Calculate losses - wl_loss = wirelength_attraction_loss( - cell_features_current, pin_features, edge_list - ) - overlap_loss = overlap_repulsion_loss( - cell_features_current, pin_features, edge_list - ) - - # Combined loss - total_loss = lambda_wirelength * wl_loss + lambda_overlap * overlap_loss - - # Backward pass - total_loss.backward() - - # Gradient clipping to prevent extreme updates - torch.nn.utils.clip_grad_norm_([cell_positions], max_norm=5.0) - - # Update positions - optimizer.step() - if scheduler is not None: - if scheduler_uses_metric: - scheduler.step(total_loss.item()) - else: - scheduler.step() - - updated_cell_features = cell_features.clone() - updated_cell_features[:, 2:4] = cell_positions.detach() - overlap_metrics = calculate_overlap_metrics(updated_cell_features) - - if loss_history is not None: - loss_history["total_loss"].append(total_loss.item()) - loss_history["wirelength_loss"].append(wl_loss.item()) - loss_history["overlap_loss"].append(overlap_loss.item()) - loss_history["overlap_count"].append(overlap_metrics["overlap_count"]) - loss_history["total_overlap_area"].append( - overlap_metrics["total_overlap_area"] - ) - loss_history["max_overlap_area"].append(overlap_metrics["max_overlap_area"]) - loss_history["learning_rate"].append(optimizer.param_groups[0]["lr"]) - - # Log progress - if verbose and (epoch % log_interval == 0 or epoch == num_epochs - 1): - print(f"Epoch {epoch}/{num_epochs}:") - print(f" Total Loss: {total_loss.item():.6f}") - print(f" Wirelength Loss: {wl_loss.item():.6f}") - print(f" Overlap Loss: {overlap_loss.item():.6f}") - print(f" Learning Rate: {optimizer.param_groups[0]['lr']:.6f}") - print(f" Overlap Count: {overlap_metrics['overlap_count']}") - print( - f" Total Overlap Area: {overlap_metrics['total_overlap_area']:.6f}" - ) + profiler_output_dir = torch_profile_output_dir or OUTPUT_DIR + with create_torch_profiler_session( + config=torch_profiler_config, + output_dir=profiler_output_dir, + profile_tag=history_run_metadata.get("profile_tag", ""), + run_metadata=history_run_metadata, + ) as profiler_session: + for epoch in range(num_epochs): + with torch.profiler.record_function("placement/epoch"): + overlap_metrics = None + optimizer.zero_grad() + + with torch.profiler.record_function("placement/forward"): + cell_features_current = cell_features.clone() + cell_features_current[:, 2:4] = cell_positions + + wl_loss = wirelength_attraction_loss( + cell_features_current, pin_features, edge_list + ) + overlap_loss = overlap_repulsion_loss( + cell_features_current, pin_features, edge_list + ) + total_loss = ( + lambda_wirelength * wl_loss + lambda_overlap * overlap_loss + ) + + with torch.profiler.record_function("placement/backward"): + total_loss.backward() + torch.nn.utils.clip_grad_norm_([cell_positions], max_norm=5.0) + + with torch.profiler.record_function("placement/optimizer_step"): + optimizer.step() + if scheduler is not None: + if scheduler_uses_metric: + scheduler.step(total_loss.item()) + else: + scheduler.step() + + should_log_epoch = verbose and ( + epoch % log_interval == 0 or epoch == num_epochs - 1 + ) + should_collect_overlap_metrics = ( + track_overlap_metrics and loss_history is not None + ) + if should_collect_overlap_metrics: + with torch.profiler.record_function("placement/metrics"): + updated_cell_features = cell_features.clone() + updated_cell_features[:, 2:4] = cell_positions.detach() + overlap_metrics = calculate_overlap_metrics( + updated_cell_features + ) + + if loss_history is not None: + loss_history["total_loss"].append(total_loss.item()) + loss_history["wirelength_loss"].append(wl_loss.item()) + loss_history["overlap_loss"].append(overlap_loss.item()) + loss_history["learning_rate"].append(optimizer.param_groups[0]["lr"]) + if should_collect_overlap_metrics: + loss_history["overlap_count"].append( + overlap_metrics["overlap_count"] + ) + loss_history["total_overlap_area"].append( + overlap_metrics["total_overlap_area"] + ) + loss_history["max_overlap_area"].append( + overlap_metrics["max_overlap_area"] + ) + + if should_log_epoch: + print(f"Epoch {epoch}/{num_epochs}:") + print(f" Total Loss: {total_loss.item():.6f}") + print(f" Wirelength Loss: {wl_loss.item():.6f}") + print(f" Overlap Loss: {overlap_loss.item():.6f}") + print(f" Learning Rate: {optimizer.param_groups[0]['lr']:.6f}") + if overlap_metrics is not None: + print(f" Overlap Count: {overlap_metrics['overlap_count']}") + print( + f" Total Overlap Area: {overlap_metrics['total_overlap_area']:.6f}" + ) + + profiler_session.step() # Create final cell features final_cell_features = cell_features.clone() @@ -896,6 +936,7 @@ def plot_placement( def main(args): """Main function demonstrating the placement optimization challenge.""" + torch_profiler_config = build_torch_profiler_config_from_args(args) if args.optuna: run_optuna_search( args, @@ -914,17 +955,29 @@ def main(args): print("\nObjective: Implement overlap_repulsion_loss() to eliminate cell overlaps") print("while minimizing wirelength.\n") + test_case = None + if args.test_case_id is not None: + test_case = TEST_CASES_BY_ID[args.test_case_id] + # Set random seed for reproducibility device = get_best_device() - seed_torch(args.seed) + seed = test_case["seed"] if test_case is not None else args.seed + seed_torch(seed) # Generate placement problem - num_macros = args.num_macros - num_std_cells = args.num_std_cells + num_macros = ( + test_case["num_macros"] if test_case is not None else args.num_macros + ) + num_std_cells = ( + test_case["num_std_cells"] if test_case is not None else args.num_std_cells + ) print(f"Generating placement problem:") + if test_case is not None: + print(f" - benchmark test case: {test_case['test_id']}") print(f" - {num_macros} macros") print(f" - {num_std_cells} standard cells") + print(f" - seed: {seed}") print(f" - device: {device}") cell_features, pin_features, edge_list = generate_placement_input( @@ -970,10 +1023,15 @@ def main(args): log_interval=200, run_metadata={ "runner": "placement.main", - "seed": args.seed, + "profile_tag": args.profile_tag, + "seed": seed, "num_macros": num_macros, "num_std_cells": num_std_cells, + "test_id": None if test_case is None else test_case["test_id"], }, + torch_profiler_config=torch_profiler_config, + torch_profile_output_dir=OUTPUT_DIR, + track_overlap_metrics=args.track_overlap_metrics, ) if args.track_loss_history: loss_history_path = save_loss_history_sqlite( diff --git a/test.py b/test.py index aae2b58..bb2edaf 100644 --- a/test.py +++ b/test.py @@ -21,8 +21,12 @@ from concurrent.futures import ProcessPoolExecutor, as_completed from arg_parse_util import parse_args +from benchmark_test_cases import ACTIVE_TEST_CASES from learning_rate_scheduler_util import build_scheduler_kwargs_from_args -from profiler_helper import run_with_optional_profile +from torch_profiler_util import ( + build_torch_profiler_config_from_args, + run_with_optional_profile, +) # Import from the challenge file from placement import ( @@ -37,27 +41,6 @@ from loss_tracking_utils import create_loss_tracking_db, save_loss_history_sqlite -# Test case configurations: (test_id, num_macros, num_std_cells, seed) -TEST_CASES = [ - # Small designs - (1, 2, 20, 1001), - (2, 3, 25, 1002), - (3, 2, 30, 1003), - # Medium designs - (4, 3, 50, 1004), - (5, 4, 75, 1005), - (6, 5, 100, 1006), - # Large designs - (7, 5, 150, 1007), - (8, 7, 150, 1008), - (9, 8, 200, 1009), - (10, 10, 2000, 1010), - # Realistic designs - # (11, 10, 10000, 1011), - # (12, 10, 100000, 1012), -] - - def run_placement_test( test_id, num_macros, @@ -110,11 +93,15 @@ def run_placement_test( verbose=False, # Suppress per-epoch output run_metadata={ "runner": "test.py", + "profile_tag": training_config["profile_tag"], "test_id": test_id, "seed": seed, "num_macros": num_macros, "num_std_cells": num_std_cells, }, + torch_profiler_config=training_config["torch_profiler_config"], + torch_profile_output_dir=OUTPUT_DIR, + track_overlap_metrics=training_config["track_overlap_metrics"], ) elapsed_time = time.time() - start_time loss_history_path = None @@ -143,6 +130,8 @@ def run_placement_test( "overlap_ratio": metrics["overlap_ratio"], "normalized_wl": metrics["normalized_wl"], } + + def run_placement_test_case_with_config(test_case, loss_tracking_db_path, training_config): """Unpack a test-case tuple for multiprocessing execution with config.""" test_id, num_macros, num_std_cells, seed = test_case @@ -170,12 +159,15 @@ def run_all_tests(args): "scheduler_name": args.scheduler, "scheduler_kwargs": build_scheduler_kwargs_from_args(args), "track_loss_history": args.track_loss_history, + "track_overlap_metrics": args.track_overlap_metrics, + "profile_tag": args.profile_tag, + "torch_profiler_config": build_torch_profiler_config_from_args(args), } print("=" * 70) print("PLACEMENT CHALLENGE TEST SUITE") print("=" * 70) - print(f"\nRunning {len(TEST_CASES)} test cases with various netlist sizes...") + print(f"\nRunning {len(ACTIVE_TEST_CASES)} test cases with various netlist sizes...") print("Using hyperparameters:") print(f" num_epochs: {training_config['num_epochs']}") print(f" lr: {training_config['lr']}") @@ -184,6 +176,8 @@ def run_all_tests(args): print(f" scheduler: {training_config['scheduler_name']}") print(f" scheduler_kwargs: {training_config['scheduler_kwargs']}") print(f" track_loss_history: {training_config['track_loss_history']}") + print(f" track_overlap_metrics: {training_config['track_overlap_metrics']}") + print(f" torch_profile: {training_config['torch_profiler_config'].enabled}") print() loss_tracking_db_path = None @@ -197,7 +191,7 @@ def run_all_tests(args): max_workers = 4 - for idx, (test_id, num_macros, num_std_cells, seed) in enumerate(TEST_CASES, 1): + for idx, (test_id, num_macros, num_std_cells, seed) in enumerate(ACTIVE_TEST_CASES, 1): size_category = ( "Small" if num_std_cells <= 30 else "Medium" if num_std_cells <= 100 @@ -218,7 +212,7 @@ def run_all_tests(args): loss_tracking_db_path, training_config, ): test_case - for test_case in TEST_CASES + for test_case in ACTIVE_TEST_CASES } completed_results = {} @@ -244,7 +238,7 @@ def run_all_tests(args): all_results = [ completed_results[test_id] - for test_id, _, _, _ in TEST_CASES + for test_id, _, _, _ in ACTIVE_TEST_CASES ] # Compute aggregate statistics From 852f32e0954935cdd66809601428cc33a74bced2 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Tue, 21 Apr 2026 17:23:07 -0700 Subject: [PATCH 23/48] modularize the benchmark test cases, so placement and the test can access it, add torch profiler support --- .gitignore | 1 + benchmark_test_cases.py | 35 +++++++ test.py | 102 +++++++++++++------ torch_profiler_util.py | 214 ++++++++++++++++++++++++++++++++++++++++ 4 files changed, 320 insertions(+), 32 deletions(-) create mode 100644 benchmark_test_cases.py create mode 100644 torch_profiler_util.py diff --git a/.gitignore b/.gitignore index 1ed17aa..cda004d 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ */.ipynb_checkpoints/* profile/* +torch_profile/* loss_history/* loss_tracking/* **/__pycache__/** diff --git a/benchmark_test_cases.py b/benchmark_test_cases.py new file mode 100644 index 0000000..b1a57c1 --- /dev/null +++ b/benchmark_test_cases.py @@ -0,0 +1,35 @@ +"""Shared benchmark configurations for placement test cases.""" + +ACTIVE_TEST_CASES = [ + # Small designs + (1, 2, 20, 1001), + (2, 3, 25, 1002), + (3, 2, 30, 1003), + # Medium designs + (4, 3, 50, 1004), + (5, 4, 75, 1005), + (6, 5, 100, 1006), + # Large designs + (7, 5, 150, 1007), + (8, 7, 150, 1008), + (9, 8, 200, 1009), + (10, 10, 2000, 1010), +] + +OPTIONAL_TEST_CASES = [ + # Realistic designs + (11, 10, 10000, 1011), + (12, 10, 100000, 1012), +] + +TEST_CASES = ACTIVE_TEST_CASES + OPTIONAL_TEST_CASES + +TEST_CASES_BY_ID = { + test_id: { + "test_id": test_id, + "num_macros": num_macros, + "num_std_cells": num_std_cells, + "seed": seed, + } + for test_id, num_macros, num_std_cells, seed in TEST_CASES +} diff --git a/test.py b/test.py index bb2edaf..c2b8457 100644 --- a/test.py +++ b/test.py @@ -145,6 +145,34 @@ def run_placement_test_case_with_config(test_case, loss_tracking_db_path, traini ) +def _run_tests_serial(test_cases, loss_tracking_db_path, training_config): + """Run test cases sequentially when process pools are unavailable.""" + completed_results = {} + for test_case in test_cases: + result = run_placement_test_case_with_config( + test_case, + loss_tracking_db_path, + training_config, + ) + completed_results[result["test_id"]] = result + + status = "✓ PASS" if result["num_cells_with_overlaps"] == 0 else "✗ FAIL" + print(f"Completed test {result['test_id']}:") + print(f" Device: {result['device']}") + print( + f" Overlap Ratio: {result['overlap_ratio']:.4f} " + f"({result['num_cells_with_overlaps']}/{result['total_cells']} cells)" + ) + print(f" Normalized WL: {result['normalized_wl']:.4f}") + print(f" Time: {result['elapsed_time']:.2f}s") + if result["loss_history_path"] is not None: + print(f" History: {result['loss_history_path']}") + print(f" Status: {status}") + print() + + return completed_results + + def run_all_tests(args): """Run all test cases and compute aggregate metrics. @@ -198,43 +226,53 @@ def run_all_tests(args): else "Large" ) - print(f"Test {idx}/{len(TEST_CASES)}: {size_category} ({num_macros} macros, {num_std_cells} std cells)") + print( + f"Test {idx}/{len(ACTIVE_TEST_CASES)}: " + f"{size_category} ({num_macros} macros, {num_std_cells} std cells)" + ) print(f" Seed: {seed}") print(f"Running up to {max_workers} tests concurrently") print() wall_start_time = time.time() - with ProcessPoolExecutor(max_workers=max_workers) as executor: - future_to_test_case = { - executor.submit( - run_placement_test_case_with_config, - test_case, - loss_tracking_db_path, - training_config, - ): test_case - for test_case in ACTIVE_TEST_CASES - } - - completed_results = {} - for future in as_completed(future_to_test_case): - result = future.result() - completed_results[result["test_id"]] = result - - status = "✓ PASS" if result["num_cells_with_overlaps"] == 0 else "✗ FAIL" - print(f"Completed test {result['test_id']}:") - print( - f" Device: {result['device']}" - ) - print( - f" Overlap Ratio: {result['overlap_ratio']:.4f} " - f"({result['num_cells_with_overlaps']}/{result['total_cells']} cells)" - ) - print(f" Normalized WL: {result['normalized_wl']:.4f}") - print(f" Time: {result['elapsed_time']:.2f}s") - if result["loss_history_path"] is not None: - print(f" History: {result['loss_history_path']}") - print(f" Status: {status}") - print() + try: + with ProcessPoolExecutor(max_workers=max_workers) as executor: + future_to_test_case = { + executor.submit( + run_placement_test_case_with_config, + test_case, + loss_tracking_db_path, + training_config, + ): test_case + for test_case in ACTIVE_TEST_CASES + } + + completed_results = {} + for future in as_completed(future_to_test_case): + result = future.result() + completed_results[result["test_id"]] = result + + status = "✓ PASS" if result["num_cells_with_overlaps"] == 0 else "✗ FAIL" + print(f"Completed test {result['test_id']}:") + print(f" Device: {result['device']}") + print( + f" Overlap Ratio: {result['overlap_ratio']:.4f} " + f"({result['num_cells_with_overlaps']}/{result['total_cells']} cells)" + ) + print(f" Normalized WL: {result['normalized_wl']:.4f}") + print(f" Time: {result['elapsed_time']:.2f}s") + if result["loss_history_path"] is not None: + print(f" History: {result['loss_history_path']}") + print(f" Status: {status}") + print() + except PermissionError: + print("Process pool unavailable in this environment; falling back to serial execution.") + print() + completed_results = _run_tests_serial( + ACTIVE_TEST_CASES, + loss_tracking_db_path, + training_config, + ) all_results = [ completed_results[test_id] diff --git a/torch_profiler_util.py b/torch_profiler_util.py new file mode 100644 index 0000000..6401ca7 --- /dev/null +++ b/torch_profiler_util.py @@ -0,0 +1,214 @@ +import json +import os +import re +from dataclasses import asdict, dataclass +from datetime import datetime + +import torch + + +@dataclass(frozen=True) +class TorchProfilerConfig: + enabled: bool = False + wait: int = 1 + warmup: int = 1 + active: int = 3 + repeat: int = 1 + record_shapes: bool = True + profile_memory: bool = True + with_stack: bool = True + acc_events: bool = False + + +def build_profile_path(output_dir, profile_tag): + """Build a timestamped cProfile output path.""" + profile_dir = os.path.join(output_dir, "profile") + os.makedirs(profile_dir, exist_ok=True) + + timestamp = datetime.now().strftime("%Y%m%d_%H%M%S") + filename_parts = ["profile"] + if profile_tag: + filename_parts.append(profile_tag) + filename_parts.append(timestamp) + + return os.path.join(profile_dir, "_".join(filename_parts) + ".prof") + + +def build_torch_profiler_config_from_args(args): + """Create a serializable torch profiler config from CLI args.""" + return TorchProfilerConfig( + enabled=args.torch_profile, + wait=args.torch_profile_wait, + warmup=args.torch_profile_warmup, + active=args.torch_profile_active, + repeat=args.torch_profile_repeat, + record_shapes=args.torch_profile_record_shapes, + profile_memory=args.torch_profile_memory, + with_stack=args.torch_profile_with_stack, + acc_events=args.torch_profile_acc_events, + ) + + +def run_with_optional_profile(main_fn, args, output_dir): + """Run main_fn(), optionally under cProfile.""" + if not args.profile: + main_fn() + return + + import cProfile + + profiler = cProfile.Profile() + profiler.runcall(main_fn) + + profile_path = build_profile_path(output_dir, args.profile_tag) + profiler.dump_stats(profile_path) + print(f"\nProfile stats dumped to: {profile_path}") + + +class TorchProfilerSession: + """Manage an optional torch.profiler session for a training loop.""" + + def __init__(self, config, output_dir, profile_tag="", run_metadata=None): + self.config = config or TorchProfilerConfig() + self.output_dir = output_dir + self.profile_tag = profile_tag + self.run_metadata = dict(run_metadata or {}) + self.trace_dir = None + self.summary_path = None + self.metadata_path = None + self._activities = None + self._profiler = None + self._profiler_context = None + self._base_name = None + + def __enter__(self): + if not self.config.enabled: + return self + + self._base_name = self._build_base_name() + self.trace_dir = self._build_trace_dir() + self.summary_path = os.path.join( + self.trace_dir, + f"{self._base_name}_key_averages.txt", + ) + self.metadata_path = os.path.join( + self.trace_dir, + f"{self._base_name}_metadata.json", + ) + + profiler_module = torch.profiler + self._activities = [profiler_module.ProfilerActivity.CPU] + if torch.cuda.is_available(): + self._activities.append(profiler_module.ProfilerActivity.CUDA) + + self._profiler_context = profiler_module.profile( + activities=self._activities, + schedule=profiler_module.schedule( + wait=self.config.wait, + warmup=self.config.warmup, + active=self.config.active, + repeat=self.config.repeat, + ), + on_trace_ready=profiler_module.tensorboard_trace_handler( + self.trace_dir, + worker_name=self._base_name, + ), + record_shapes=self.config.record_shapes, + profile_memory=self.config.profile_memory, + with_stack=self.config.with_stack, + acc_events=self.config.acc_events, + ) + self._profiler = self._profiler_context.__enter__() + + self._write_metadata() + print(f"Torch profiler enabled. Writing traces to: {self.trace_dir}") + return self + + def __exit__(self, exc_type, exc_value, traceback): + if not self.config.enabled: + return False + + should_suppress = False + if self._profiler_context is not None: + should_suppress = self._profiler_context.__exit__( + exc_type, + exc_value, + traceback, + ) + self._write_summary() + print(f"Torch profiler summary saved to: {self.summary_path}") + return should_suppress + + def step(self): + """Advance the profiler schedule by one training step.""" + if self._profiler is not None: + self._profiler.step() + + def _build_trace_dir(self): + profile_root = os.path.join(self.output_dir, "torch_profile") + os.makedirs(profile_root, exist_ok=True) + trace_dir = os.path.join(profile_root, self._base_name) + os.makedirs(trace_dir, exist_ok=True) + return trace_dir + + def _build_base_name(self): + timestamp = datetime.now().strftime("%Y%m%d_%H%M%S") + filename_parts = ["torch_profile"] + if self.profile_tag: + filename_parts.append(self.profile_tag) + + runner = self.run_metadata.get("runner") + if runner: + filename_parts.append(str(runner)) + + test_id = self.run_metadata.get("test_id") + if test_id is not None: + filename_parts.append(f"test_{test_id}") + + filename_parts.append(f"pid_{os.getpid()}") + filename_parts.append(timestamp) + return "_".join(_slugify(part) for part in filename_parts if part) + + def _write_metadata(self): + metadata = { + "created_at": datetime.now().isoformat(timespec="seconds"), + "activities": [activity.name for activity in self._activities], + "config": asdict(self.config), + "run_metadata": self.run_metadata, + } + with open(self.metadata_path, "w", encoding="utf-8") as metadata_file: + json.dump(metadata, metadata_file, indent=2, sort_keys=True) + + def _write_summary(self): + if self._profiler is None or self.summary_path is None: + return + + sort_by = "self_cuda_time_total" + if all(activity.name != "CUDA" for activity in self._activities): + sort_by = "self_cpu_time_total" + + summary = self._profiler.key_averages().table( + sort_by=sort_by, + row_limit=50, + ) + with open(self.summary_path, "w", encoding="utf-8") as summary_file: + summary_file.write(summary) + + +def create_torch_profiler_session( + config, + output_dir, + profile_tag="", + run_metadata=None, +): + """Return a no-op or active torch profiler session for a training loop.""" + return TorchProfilerSession( + config=config, + output_dir=output_dir, + profile_tag=profile_tag, + run_metadata=run_metadata, + ) + + +def _slugify(value): + return re.sub(r"[^A-Za-z0-9._-]+", "-", str(value)).strip("-") or "run" From 866b98275279234a4030b5c896267e6c6d2963c6 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Tue, 21 Apr 2026 20:53:39 -0700 Subject: [PATCH 24/48] avoid loss tracking if it's not needed. enable tests to get configurable number of workers. --- arg_parse_util.py | 13 ++++++ loss_tracking_utils.py | 89 +++++++++++++++++++++++++----------------- placement.py | 25 +++++------- test.py | 85 +++++++++++++++++++++++----------------- 4 files changed, 124 insertions(+), 88 deletions(-) diff --git a/arg_parse_util.py b/arg_parse_util.py index fe7079c..6bb90e5 100644 --- a/arg_parse_util.py +++ b/arg_parse_util.py @@ -4,6 +4,13 @@ from learning_rate_scheduler_util import SCHEDULER_CHOICES +def _positive_int(value): + parsed_value = int(value) + if parsed_value < 1: + raise argparse.ArgumentTypeError("must be at least 1") + return parsed_value + + def parse_args(): """Parse command line arguments for optional profiling.""" parser = argparse.ArgumentParser() @@ -193,4 +200,10 @@ def parse_args(): default=False, help="Enable or disable per-epoch overlap-metric collection for loss tracking.", ) + parser.add_argument( + "--workers", + type=_positive_int, + default=4, + help="Number of worker processes for test.py. Use 1 to run serially.", + ) return parser.parse_args() diff --git a/loss_tracking_utils.py b/loss_tracking_utils.py index fb1cbe2..5767cd3 100644 --- a/loss_tracking_utils.py +++ b/loss_tracking_utils.py @@ -5,6 +5,33 @@ DB_DIRNAME = "loss_tracking" DB_FILENAME_PREFIX = "loss_tracking" +BASE_LOSS_HISTORY_FIELDS = ( + "total_loss", + "wirelength_loss", + "overlap_loss", + "learning_rate", +) +OPTIONAL_LOSS_HISTORY_FIELDS = ( + "overlap_count", + "total_overlap_area", + "max_overlap_area", +) +ALL_LOSS_HISTORY_FIELDS = BASE_LOSS_HISTORY_FIELDS + OPTIONAL_LOSS_HISTORY_FIELDS + + +def get_expected_loss_history_fields(track_overlap_metrics=False): + """Return the expected loss-history series for a run configuration.""" + if track_overlap_metrics: + return ALL_LOSS_HISTORY_FIELDS + return BASE_LOSS_HISTORY_FIELDS + + +def create_loss_history(run_metadata=None, track_overlap_metrics=False): + """Create a loss-history container with the expected series predeclared.""" + loss_history = {"run_metadata": dict(run_metadata or {})} + for field_name in get_expected_loss_history_fields(track_overlap_metrics): + loss_history[field_name] = [] + return loss_history def get_loss_tracking_db_dir(output_dir): @@ -74,6 +101,7 @@ def _initialize_schema(connection): total_loss REAL, wirelength_loss REAL, overlap_loss REAL, + learning_rate REAL, overlap_count INTEGER, total_overlap_area REAL, max_overlap_area REAL, @@ -90,6 +118,16 @@ def _initialize_schema(connection): "num_std_cells": "INTEGER", }, ) + _ensure_columns( + connection, + "loss_history", + { + "learning_rate": "REAL", + "overlap_count": "INTEGER", + "total_overlap_area": "REAL", + "max_overlap_area": "REAL", + }, + ) def _ensure_columns(connection, table_name, columns): @@ -129,20 +167,14 @@ def save_loss_history_sqlite(loss_history, db_path, run_metadata=None): metadata.setdefault("run_id", timestamp) metadata.setdefault("saved_at", datetime.now().isoformat(timespec="seconds")) - total_loss = loss_history.get("total_loss", []) - wirelength_loss = loss_history.get("wirelength_loss", []) - overlap_loss = loss_history.get("overlap_loss", []) - overlap_count = loss_history.get("overlap_count", []) - total_overlap_area = loss_history.get("total_overlap_area", []) - max_overlap_area = loss_history.get("max_overlap_area", []) + history_series = { + field_name: loss_history.get(field_name, []) + for field_name in ALL_LOSS_HISTORY_FIELDS + } row_count = max( - len(total_loss), - len(wirelength_loss), - len(overlap_loss), - len(overlap_count), - len(total_overlap_area), - len(max_overlap_area), + (len(values) for values in history_series.values()), + default=0, ) connection = _connect_db(db_path) @@ -235,29 +267,13 @@ def save_loss_history_sqlite(loss_history, db_path, run_metadata=None): ( metadata["run_id"], epoch, - _sqlite_scalar( - total_loss[epoch] if epoch < len(total_loss) else None - ), - _sqlite_scalar( - wirelength_loss[epoch] - if epoch < len(wirelength_loss) - else None - ), - _sqlite_scalar( - overlap_loss[epoch] if epoch < len(overlap_loss) else None - ), - _sqlite_scalar( - overlap_count[epoch] if epoch < len(overlap_count) else None - ), - _sqlite_scalar( - total_overlap_area[epoch] - if epoch < len(total_overlap_area) - else None - ), - _sqlite_scalar( - max_overlap_area[epoch] - if epoch < len(max_overlap_area) - else None + *( + _sqlite_scalar( + history_series[field_name][epoch] + if epoch < len(history_series[field_name]) + else None + ) + for field_name in ALL_LOSS_HISTORY_FIELDS ), ) ) @@ -270,11 +286,12 @@ def save_loss_history_sqlite(loss_history, db_path, run_metadata=None): total_loss, wirelength_loss, overlap_loss, + learning_rate, overlap_count, total_overlap_area, max_overlap_area ) - VALUES (?, ?, ?, ?, ?, ?, ?, ?) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?) """, history_rows, ) diff --git a/placement.py b/placement.py index f60eec2..013a4cc 100644 --- a/placement.py +++ b/placement.py @@ -52,7 +52,11 @@ build_scheduler_kwargs_from_args, create_lr_scheduler, ) -from loss_tracking_utils import create_loss_tracking_db, save_loss_history_sqlite +from loss_tracking_utils import ( + create_loss_history, + create_loss_tracking_db, + save_loss_history_sqlite, +) from torch_profiler_util import ( build_torch_profiler_config_from_args, create_torch_profiler_session, @@ -576,21 +580,10 @@ def train_placement( loss_history = None if track_loss_history: - loss_history = { - "run_metadata": history_run_metadata, - "total_loss": [], - "wirelength_loss": [], - "overlap_loss": [], - "learning_rate": [], - } - if track_overlap_metrics: - loss_history.update( - { - "overlap_count": [], - "total_overlap_area": [], - "max_overlap_area": [], - } - ) + loss_history = create_loss_history( + run_metadata=history_run_metadata, + track_overlap_metrics=track_overlap_metrics, + ) # Training loop profiler_output_dir = torch_profile_output_dir or OUTPUT_DIR diff --git a/test.py b/test.py index c2b8457..aff47c7 100644 --- a/test.py +++ b/test.py @@ -191,6 +191,7 @@ def run_all_tests(args): "profile_tag": args.profile_tag, "torch_profiler_config": build_torch_profiler_config_from_args(args), } + max_workers = args.workers print("=" * 70) print("PLACEMENT CHALLENGE TEST SUITE") @@ -205,6 +206,7 @@ def run_all_tests(args): print(f" scheduler_kwargs: {training_config['scheduler_kwargs']}") print(f" track_loss_history: {training_config['track_loss_history']}") print(f" track_overlap_metrics: {training_config['track_overlap_metrics']}") + print(f" workers: {max_workers}") print(f" torch_profile: {training_config['torch_profiler_config'].enabled}") print() @@ -217,8 +219,6 @@ def run_all_tests(args): print("Loss history tracking disabled.") print() - max_workers = 4 - for idx, (test_id, num_macros, num_std_cells, seed) in enumerate(ACTIVE_TEST_CASES, 1): size_category = ( "Small" if num_std_cells <= 30 @@ -231,48 +231,61 @@ def run_all_tests(args): f"{size_category} ({num_macros} macros, {num_std_cells} std cells)" ) print(f" Seed: {seed}") - print(f"Running up to {max_workers} tests concurrently") + if max_workers == 1: + print("Running serially") + else: + print(f"Running up to {max_workers} tests concurrently") print() wall_start_time = time.time() - try: - with ProcessPoolExecutor(max_workers=max_workers) as executor: - future_to_test_case = { - executor.submit( - run_placement_test_case_with_config, - test_case, - loss_tracking_db_path, - training_config, - ): test_case - for test_case in ACTIVE_TEST_CASES - } - - completed_results = {} - for future in as_completed(future_to_test_case): - result = future.result() - completed_results[result["test_id"]] = result - - status = "✓ PASS" if result["num_cells_with_overlaps"] == 0 else "✗ FAIL" - print(f"Completed test {result['test_id']}:") - print(f" Device: {result['device']}") - print( - f" Overlap Ratio: {result['overlap_ratio']:.4f} " - f"({result['num_cells_with_overlaps']}/{result['total_cells']} cells)" - ) - print(f" Normalized WL: {result['normalized_wl']:.4f}") - print(f" Time: {result['elapsed_time']:.2f}s") - if result["loss_history_path"] is not None: - print(f" History: {result['loss_history_path']}") - print(f" Status: {status}") - print() - except PermissionError: - print("Process pool unavailable in this environment; falling back to serial execution.") - print() + if max_workers == 1: completed_results = _run_tests_serial( ACTIVE_TEST_CASES, loss_tracking_db_path, training_config, ) + else: + try: + with ProcessPoolExecutor(max_workers=max_workers) as executor: + future_to_test_case = { + executor.submit( + run_placement_test_case_with_config, + test_case, + loss_tracking_db_path, + training_config, + ): test_case + for test_case in ACTIVE_TEST_CASES + } + + completed_results = {} + for future in as_completed(future_to_test_case): + result = future.result() + completed_results[result["test_id"]] = result + + status = "✓ PASS" if result["num_cells_with_overlaps"] == 0 else "✗ FAIL" + print(f"Completed test {result['test_id']}:") + print(f" Device: {result['device']}") + print( + f" Overlap Ratio: {result['overlap_ratio']:.4f} " + f"({result['num_cells_with_overlaps']}/{result['total_cells']} cells)" + ) + print(f" Normalized WL: {result['normalized_wl']:.4f}") + print(f" Time: {result['elapsed_time']:.2f}s") + if result["loss_history_path"] is not None: + print(f" History: {result['loss_history_path']}") + print(f" Status: {status}") + print() + except PermissionError: + print( + "Process pool unavailable in this environment; " + "falling back to serial execution." + ) + print() + completed_results = _run_tests_serial( + ACTIVE_TEST_CASES, + loss_tracking_db_path, + training_config, + ) all_results = [ completed_results[test_id] From e7d66b875e1b22fe79c805c171f7f10d16318af7 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Tue, 21 Apr 2026 22:05:58 -0700 Subject: [PATCH 25/48] create loss curve script --- loss_curve_test.py | 102 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 loss_curve_test.py diff --git a/loss_curve_test.py b/loss_curve_test.py new file mode 100644 index 0000000..3f1c6fb --- /dev/null +++ b/loss_curve_test.py @@ -0,0 +1,102 @@ +import torch +import matplotlib.pyplot as plt + + +def overlap_loss_from_pairwise_overlap_area(pairwise_overlap_area: torch.Tensor) -> torch.Tensor: + """Apply the same masking and normalization used in placement.py.""" + n = pairwise_overlap_area.shape[0] + mask = torch.triu(torch.ones_like(pairwise_overlap_area), diagonal=1) + normalization = torch.sqrt( + torch.tensor( + n, + device=pairwise_overlap_area.device, + dtype=pairwise_overlap_area.dtype, + ) + ) + return torch.sum(pairwise_overlap_area * mask) / normalization + + +def main() -> None: + # Sweep one active upper-triangular overlap value from 1e7 down to 1. + overlap_values = torch.logspace(7, 0, steps=200) + losses = [] + + for overlap_value in overlap_values: + pairwise_overlap_area = torch.tensor( + [ + [0.0, overlap_value.item()], + [0.0, 0.0], + ], + dtype=torch.float32, + ) + losses.append(overlap_loss_from_pairwise_overlap_area(pairwise_overlap_area).item()) + + losses = torch.tensor(losses) + overlap_np = overlap_values.numpy() + losses_np = losses.numpy() + + fig, ax = plt.subplots(figsize=(9, 6)) + (line,) = ax.plot( + overlap_np, + losses_np, + linewidth=2, + label="loss(pairwise_overlap_area)", + ) + ax.scatter(overlap_np, losses_np, s=12, alpha=0.35, color=line.get_color()) + ax.set_xscale("log") + ax.set_yscale("log") + ax.invert_xaxis() + ax.set_xlabel("pairwise_overlap_area") + ax.set_ylabel("loss") + ax.set_title("Interactive Overlap Loss Curve") + ax.grid(True, which="both", linestyle="--", alpha=0.4) + ax.legend(loc="best") + + annotation = ax.annotate( + "", + xy=(0, 0), + xytext=(15, 15), + textcoords="offset points", + bbox={"boxstyle": "round", "fc": "white", "alpha": 0.9}, + arrowprops={"arrowstyle": "->", "alpha": 0.6}, + ) + annotation.set_visible(False) + + def update_annotation(index: int) -> None: + x_value = float(overlap_np[index]) + y_value = float(losses_np[index]) + annotation.xy = (x_value, y_value) + annotation.set_text( + f"pairwise_overlap_area={x_value:.3e}\nloss={y_value:.3e}" + ) + annotation.set_visible(True) + + def on_move(event) -> None: + if event.inaxes != ax or event.xdata is None or event.ydata is None: + if annotation.get_visible(): + annotation.set_visible(False) + fig.canvas.draw_idle() + return + + display_points = ax.transData.transform( + torch.tensor(list(zip(overlap_np, losses_np))).numpy() + ) + dx = display_points[:, 0] - event.x + dy = display_points[:, 1] - event.y + distances = dx * dx + dy * dy + nearest_index = int(distances.argmin()) + + if distances[nearest_index] < 250: + update_annotation(nearest_index) + elif annotation.get_visible(): + annotation.set_visible(False) + + fig.canvas.draw_idle() + + fig.canvas.mpl_connect("motion_notify_event", on_move) + plt.tight_layout() + plt.show() + + +if __name__ == "__main__": + main() From 85c437f71c75264313a72b99948ae90f8f7fcb29 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Tue, 21 Apr 2026 22:35:38 -0700 Subject: [PATCH 26/48] a --- loss_curve_test.py => lab/loss_curve_test.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) rename loss_curve_test.py => lab/loss_curve_test.py (91%) diff --git a/loss_curve_test.py b/lab/loss_curve_test.py similarity index 91% rename from loss_curve_test.py rename to lab/loss_curve_test.py index 3f1c6fb..8fac677 100644 --- a/loss_curve_test.py +++ b/lab/loss_curve_test.py @@ -1,5 +1,6 @@ import torch import matplotlib.pyplot as plt +from matplotlib.ticker import ScalarFormatter def overlap_loss_from_pairwise_overlap_area(pairwise_overlap_area: torch.Tensor) -> torch.Tensor: @@ -43,14 +44,14 @@ def main() -> None: label="loss(pairwise_overlap_area)", ) ax.scatter(overlap_np, losses_np, s=12, alpha=0.35, color=line.get_color()) - ax.set_xscale("log") - ax.set_yscale("log") - ax.invert_xaxis() ax.set_xlabel("pairwise_overlap_area") ax.set_ylabel("loss") ax.set_title("Interactive Overlap Loss Curve") ax.grid(True, which="both", linestyle="--", alpha=0.4) ax.legend(loc="best") + ax.ticklabel_format(style="plain", axis="both", useOffset=False) + ax.xaxis.set_major_formatter(ScalarFormatter()) + ax.yaxis.set_major_formatter(ScalarFormatter()) annotation = ax.annotate( "", @@ -67,7 +68,7 @@ def update_annotation(index: int) -> None: y_value = float(losses_np[index]) annotation.xy = (x_value, y_value) annotation.set_text( - f"pairwise_overlap_area={x_value:.3e}\nloss={y_value:.3e}" + f"pairwise_overlap_area={x_value:,.3f}\nloss={y_value:,.3f}" ) annotation.set_visible(True) From 7ccec84e06f4d2876895e57ae1d6ec03a8f5d7c6 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Wed, 22 Apr 2026 19:38:20 -0700 Subject: [PATCH 27/48] use log of the overlap area. I think we will have to scale that log later on --- lab/loss_curve_test.py | 17 +++++++++-------- placement.py | 9 +++++---- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/lab/loss_curve_test.py b/lab/loss_curve_test.py index 8fac677..2274f1f 100644 --- a/lab/loss_curve_test.py +++ b/lab/loss_curve_test.py @@ -7,14 +7,15 @@ def overlap_loss_from_pairwise_overlap_area(pairwise_overlap_area: torch.Tensor) """Apply the same masking and normalization used in placement.py.""" n = pairwise_overlap_area.shape[0] mask = torch.triu(torch.ones_like(pairwise_overlap_area), diagonal=1) - normalization = torch.sqrt( - torch.tensor( - n, - device=pairwise_overlap_area.device, - dtype=pairwise_overlap_area.dtype, - ) - ) - return torch.sum(pairwise_overlap_area * mask) / normalization + # normalization = torch.sqrt( + # torch.tensor( + # n, + # device=pairwise_overlap_area.device, + # dtype=pairwise_overlap_area.dtype, + # ) + # ) + # return torch.log1p(torch.sum(pairwise_overlap_area * mask) / normalization) + return torch.log1p(torch.sum(pairwise_overlap_area * mask)) def main() -> None: diff --git a/placement.py b/placement.py index 013a4cc..62b57cb 100644 --- a/placement.py +++ b/placement.py @@ -473,10 +473,11 @@ def overlap_repulsion_loss(cell_features, pin_features, edge_list): pairwise_overlap_area = overlap_x * overlap_y mask = torch.triu(torch.ones_like(pairwise_overlap_area), diagonal=1) - normalization = torch.sqrt( - torch.tensor(N, device=pairwise_overlap_area.device, dtype=pairwise_overlap_area.dtype) - ) - loss = torch.sum(pairwise_overlap_area * mask) / normalization + # normalization = torch.sqrt( + # torch.tensor(N, device=pairwise_overlap_area.device, dtype=pairwise_overlap_area.dtype) + # ) + # loss = torch.sum(pairwise_overlap_area * mask) / normalization + loss = torch.log1p(torch.sum(pairwise_overlap_area * mask)) return loss From 671628b3432720bd139747a024a85c494f0933ed Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Wed, 22 Apr 2026 19:42:25 -0700 Subject: [PATCH 28/48] try out overlap scaler --- lab/loss_curve_test.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lab/loss_curve_test.py b/lab/loss_curve_test.py index 2274f1f..90682c2 100644 --- a/lab/loss_curve_test.py +++ b/lab/loss_curve_test.py @@ -7,6 +7,7 @@ def overlap_loss_from_pairwise_overlap_area(pairwise_overlap_area: torch.Tensor) """Apply the same masking and normalization used in placement.py.""" n = pairwise_overlap_area.shape[0] mask = torch.triu(torch.ones_like(pairwise_overlap_area), diagonal=1) + overlap_sclar = 150 # normalization = torch.sqrt( # torch.tensor( # n, @@ -15,7 +16,7 @@ def overlap_loss_from_pairwise_overlap_area(pairwise_overlap_area: torch.Tensor) # ) # ) # return torch.log1p(torch.sum(pairwise_overlap_area * mask) / normalization) - return torch.log1p(torch.sum(pairwise_overlap_area * mask)) + return torch.log1p(torch.sum(pairwise_overlap_area * mask)) * overlap_sclar def main() -> None: From 5fcc13f3b0d96955ecc68a3a02cd6fd21ccd8d69 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Wed, 22 Apr 2026 20:14:49 -0700 Subject: [PATCH 29/48] init early stop --- arg_parse_util.py | 30 +++++ hyperparameter_search.py | 5 + placement.py | 235 ++++++++++++++++++++++++++++++++------- test.py | 23 ++++ 4 files changed, 250 insertions(+), 43 deletions(-) diff --git a/arg_parse_util.py b/arg_parse_util.py index 6bb90e5..752f88b 100644 --- a/arg_parse_util.py +++ b/arg_parse_util.py @@ -200,6 +200,36 @@ def parse_args(): default=False, help="Enable or disable per-epoch overlap-metric collection for loss tracking.", ) + parser.add_argument( + "--early-stop", + action=argparse.BooleanOptionalAction, + default=True, + help="Enable or disable overlap-first early stopping during training.", + ) + parser.add_argument( + "--early-stop-patience", + type=_positive_int, + default=75, + help="Patience before stopping when overlap stops improving.", + ) + parser.add_argument( + "--early-stop-min-delta", + type=float, + default=1e-4, + help="Minimum improvement required to reset early-stop patience.", + ) + parser.add_argument( + "--early-stop-overlap-threshold", + type=float, + default=1e-4, + help="Treat overlap below this value as effectively zero for early stopping.", + ) + parser.add_argument( + "--early-stop-zero-overlap-patience", + type=_positive_int, + default=25, + help="Extra patience after zero-overlap is reached to keep reducing wirelength.", + ) parser.add_argument( "--workers", type=_positive_int, diff --git a/hyperparameter_search.py b/hyperparameter_search.py index 69e03d3..fed80b0 100644 --- a/hyperparameter_search.py +++ b/hyperparameter_search.py @@ -85,6 +85,11 @@ def objective(trial): "num_macros": num_macros, "num_std_cells": num_std_cells, }, + early_stop_enabled=args.early_stop, + early_stop_patience=args.early_stop_patience, + early_stop_min_delta=args.early_stop_min_delta, + early_stop_overlap_threshold=args.early_stop_overlap_threshold, + early_stop_zero_overlap_patience=args.early_stop_zero_overlap_patience, ) metrics = calculate_normalized_metrics( diff --git a/placement.py b/placement.py index 62b57cb..34b1af6 100644 --- a/placement.py +++ b/placement.py @@ -386,6 +386,84 @@ def wirelength_attraction_loss(cell_features, pin_features, edge_list): return ret +def compute_pairwise_overlap_areas(cell_features): + """Return pairwise overlap areas for all cell pairs.""" + num_cells = cell_features.shape[0] + if num_cells <= 1: + return torch.zeros( + (num_cells, num_cells), + device=cell_features.device, + dtype=cell_features.dtype, + ) + + x_col = cell_features[:, CellFeatureIdx.X] + y_col = cell_features[:, CellFeatureIdx.Y] + widths = cell_features[:, CellFeatureIdx.WIDTH] + heights = cell_features[:, CellFeatureIdx.HEIGHT] + + x_delta = torch.abs(x_col.unsqueeze(1) - x_col.unsqueeze(0)) + y_delta = torch.abs(y_col.unsqueeze(1) - y_col.unsqueeze(0)) + + x_span = (widths.unsqueeze(1) + widths.unsqueeze(0)) / 2 + y_span = (heights.unsqueeze(1) + heights.unsqueeze(0)) / 2 + + overlap_x = torch.relu(x_span - x_delta) + overlap_y = torch.relu(y_span - y_delta) + return overlap_x * overlap_y + + +def calculate_overlap_metrics_torch(cell_features): + """Calculate overlap metrics with vectorized torch operations.""" + num_cells = cell_features.shape[0] + if num_cells <= 1: + zero = torch.tensor(0.0, device=cell_features.device, dtype=cell_features.dtype) + return { + "overlap_count": 0, + "total_overlap_area": 0.0, + "max_overlap_area": 0.0, + "overlap_percentage": 0.0, + "cells_with_overlap": 0, + "has_zero_overlap": True, + "total_overlap_area_tensor": zero, + "max_overlap_area_tensor": zero, + } + + pairwise_overlap_area = compute_pairwise_overlap_areas(cell_features) + mask = torch.triu( + torch.ones_like(pairwise_overlap_area, dtype=torch.bool), + diagonal=1, + ) + active_overlap_areas = pairwise_overlap_area[mask] + overlapping_pairs = active_overlap_areas > 0 + + overlap_count = int(overlapping_pairs.sum().item()) + total_overlap_area = active_overlap_areas.sum() + max_overlap_area = ( + active_overlap_areas.max() + if active_overlap_areas.numel() > 0 + else total_overlap_area.new_zeros(()) + ) + + overlap_matrix = (pairwise_overlap_area > 0) & mask + overlap_matrix = overlap_matrix | overlap_matrix.transpose(0, 1) + cells_with_overlap = int(overlap_matrix.any(dim=0).sum().item()) + total_area = cell_features[:, CellFeatureIdx.AREA].sum() + overlap_percentage = ( + overlap_count / num_cells * 100.0 if total_area.item() > 0 else 0.0 + ) + + return { + "overlap_count": overlap_count, + "total_overlap_area": float(total_overlap_area.item()), + "max_overlap_area": float(max_overlap_area.item()), + "overlap_percentage": overlap_percentage, + "cells_with_overlap": cells_with_overlap, + "has_zero_overlap": overlap_count == 0, + "total_overlap_area_tensor": total_overlap_area, + "max_overlap_area_tensor": max_overlap_area, + } + + def overlap_repulsion_loss(cell_features, pin_features, edge_list): """Calculate loss to prevent cell overlaps. @@ -430,54 +508,19 @@ def overlap_repulsion_loss(cell_features, pin_features, edge_list): Returns: Scalar loss value (should be 0 when no overlaps exist) """ - - N = cell_features.shape[0] if N <= 1: return torch.tensor(0.0, requires_grad=True, device=cell_features.device) - - x_col = cell_features[:, CellFeatureIdx.X] - y_col = cell_features[:, CellFeatureIdx.Y] - - x_delta = torch.abs(x_col.unsqueeze(1) - x_col.unsqueeze(0)) - y_delta = torch.abs(y_col.unsqueeze(1) - y_col.unsqueeze(0)) - - # print("x_delta", x_delta) - # print("x_delta shape", x_delta.shape) - - widths = cell_features[:, CellFeatureIdx.WIDTH] - widths_i = widths.unsqueeze(1) - widths_j = widths.unsqueeze(0) - # print("widths", widths) - # print("widths.shape",widths.shape) - - heights = cell_features[:, CellFeatureIdx.HEIGHT] - heights_i = heights.unsqueeze(1) - heights_j = heights.unsqueeze(0) - # print("heights", heights) - # print("heights_i shape", heights_i.shape) - - x_span = (widths_i + widths_j) / 2 - y_span = (heights_i + heights_j) / 2 - - # print("x span", x_span) - # print("y span", y_span) - - overlap_x = torch.relu(x_span - x_delta) - overlap_y = torch.relu(y_span - y_delta) - - # print("overlap_x", overlap_x) - # print("overlap_y", overlap_y) - - pairwise_overlap_area = overlap_x * overlap_y + pairwise_overlap_area = compute_pairwise_overlap_areas(cell_features) mask = torch.triu(torch.ones_like(pairwise_overlap_area), diagonal=1) # normalization = torch.sqrt( # torch.tensor(N, device=pairwise_overlap_area.device, dtype=pairwise_overlap_area.dtype) # ) # loss = torch.sum(pairwise_overlap_area * mask) / normalization - loss = torch.log1p(torch.sum(pairwise_overlap_area * mask)) + overlap_sclar = 200 + loss = torch.log1p(torch.sum(pairwise_overlap_area * mask)) * overlap_sclar return loss @@ -507,6 +550,11 @@ def train_placement( torch_profiler_config=None, torch_profile_output_dir=None, track_overlap_metrics=False, + early_stop_enabled=True, + early_stop_patience=75, + early_stop_min_delta=1e-4, + early_stop_overlap_threshold=1e-4, + early_stop_zero_overlap_patience=25, ): """Train the placement optimization using gradient descent. @@ -527,6 +575,11 @@ def train_placement( torch_profiler_config: Optional torch profiler configuration torch_profile_output_dir: Base directory for torch profiler artifacts track_overlap_metrics: Whether to collect per-epoch overlap metrics + early_stop_enabled: Whether to stop once overlap-first convergence stalls + early_stop_patience: Plateau patience before zero-overlap is reached + early_stop_min_delta: Minimum improvement to reset patience + early_stop_overlap_threshold: Treat overlap below this as effectively zero + early_stop_zero_overlap_patience: Extra patience after zero-overlap to keep improving wirelength Returns: Dictionary with: @@ -570,6 +623,11 @@ def train_placement( "scheduler_kwargs": scheduler_kwargs, "track_loss_history": track_loss_history, "track_overlap_metrics": track_overlap_metrics, + "early_stop_enabled": early_stop_enabled, + "early_stop_patience": early_stop_patience, + "early_stop_min_delta": early_stop_min_delta, + "early_stop_overlap_threshold": early_stop_overlap_threshold, + "early_stop_zero_overlap_patience": early_stop_zero_overlap_patience, "log_interval": log_interval, "verbose": verbose, "total_cells": int(cell_features.shape[0]), @@ -586,6 +644,16 @@ def train_placement( track_overlap_metrics=track_overlap_metrics, ) + best_cell_positions = cell_positions.detach().clone() + best_overlap_score = float("inf") + best_zero_overlap_wl = float("inf") + best_epoch = -1 + epochs_without_improvement = 0 + zero_overlap_epochs_without_improvement = 0 + zero_overlap_reached = False + stopped_early = False + stop_reason = "" + # Training loop profiler_output_dir = torch_profile_output_dir or OUTPUT_DIR with create_torch_profiler_session( @@ -628,17 +696,74 @@ def train_placement( should_log_epoch = verbose and ( epoch % log_interval == 0 or epoch == num_epochs - 1 ) - should_collect_overlap_metrics = ( - track_overlap_metrics and loss_history is not None + should_compute_overlap_metrics = ( + track_overlap_metrics + or early_stop_enabled + or should_log_epoch ) - if should_collect_overlap_metrics: + updated_cell_features = None + if should_compute_overlap_metrics: with torch.profiler.record_function("placement/metrics"): updated_cell_features = cell_features.clone() updated_cell_features[:, 2:4] = cell_positions.detach() - overlap_metrics = calculate_overlap_metrics( + overlap_metrics = calculate_overlap_metrics_torch( updated_cell_features ) + if early_stop_enabled: + overlap_score = overlap_metrics["total_overlap_area"] + has_zero_overlap = ( + overlap_metrics["overlap_count"] == 0 + or overlap_score <= early_stop_overlap_threshold + ) + if has_zero_overlap: + current_wl = wirelength_attraction_loss( + updated_cell_features, + pin_features, + edge_list, + ).item() + if ( + not zero_overlap_reached + or current_wl < best_zero_overlap_wl - early_stop_min_delta + ): + zero_overlap_reached = True + best_zero_overlap_wl = current_wl + best_cell_positions = cell_positions.detach().clone() + best_epoch = epoch + zero_overlap_epochs_without_improvement = 0 + else: + zero_overlap_epochs_without_improvement += 1 + + if ( + zero_overlap_reached + and zero_overlap_epochs_without_improvement + >= early_stop_zero_overlap_patience + ): + stopped_early = True + stop_reason = "zero_overlap_plateau" + else: + if zero_overlap_reached: + zero_overlap_epochs_without_improvement += 1 + if ( + zero_overlap_epochs_without_improvement + >= early_stop_zero_overlap_patience + ): + stopped_early = True + stop_reason = "zero_overlap_plateau" + else: + if overlap_score < best_overlap_score - early_stop_min_delta: + best_overlap_score = overlap_score + best_cell_positions = cell_positions.detach().clone() + best_epoch = epoch + epochs_without_improvement = 0 + else: + epochs_without_improvement += 1 + + if epochs_without_improvement >= early_stop_patience: + stopped_early = True + stop_reason = "overlap_plateau" + should_collect_overlap_metrics = track_overlap_metrics and loss_history is not None + if loss_history is not None: loss_history["total_loss"].append(total_loss.item()) loss_history["wirelength_loss"].append(wl_loss.item()) @@ -666,17 +791,36 @@ def train_placement( print( f" Total Overlap Area: {overlap_metrics['total_overlap_area']:.6f}" ) + if early_stop_enabled: + print(f" Best Epoch: {best_epoch}") + + if stopped_early: + if verbose: + print( + f"Early stopping at epoch {epoch} " + f"with reason={stop_reason} best_epoch={best_epoch}" + ) + break profiler_session.step() # Create final cell features final_cell_features = cell_features.clone() - final_cell_features[:, 2:4] = cell_positions.detach() + final_positions = best_cell_positions if early_stop_enabled else cell_positions.detach() + final_cell_features[:, 2:4] = final_positions + + if loss_history is not None: + loss_history["run_metadata"]["stopped_early"] = stopped_early + loss_history["run_metadata"]["stop_reason"] = stop_reason + loss_history["run_metadata"]["best_epoch"] = best_epoch return { "final_cell_features": final_cell_features, "initial_cell_features": initial_cell_features, "loss_history": loss_history, + "stopped_early": stopped_early, + "stop_reason": stop_reason, + "best_epoch": best_epoch, } @@ -1026,6 +1170,11 @@ def main(args): torch_profiler_config=torch_profiler_config, torch_profile_output_dir=OUTPUT_DIR, track_overlap_metrics=args.track_overlap_metrics, + early_stop_enabled=args.early_stop, + early_stop_patience=args.early_stop_patience, + early_stop_min_delta=args.early_stop_min_delta, + early_stop_overlap_threshold=args.early_stop_overlap_threshold, + early_stop_zero_overlap_patience=args.early_stop_zero_overlap_patience, ) if args.track_loss_history: loss_history_path = save_loss_history_sqlite( diff --git a/test.py b/test.py index aff47c7..ae6bb23 100644 --- a/test.py +++ b/test.py @@ -102,6 +102,13 @@ def run_placement_test( torch_profiler_config=training_config["torch_profiler_config"], torch_profile_output_dir=OUTPUT_DIR, track_overlap_metrics=training_config["track_overlap_metrics"], + early_stop_enabled=training_config["early_stop_enabled"], + early_stop_patience=training_config["early_stop_patience"], + early_stop_min_delta=training_config["early_stop_min_delta"], + early_stop_overlap_threshold=training_config["early_stop_overlap_threshold"], + early_stop_zero_overlap_patience=training_config[ + "early_stop_zero_overlap_patience" + ], ) elapsed_time = time.time() - start_time loss_history_path = None @@ -188,6 +195,11 @@ def run_all_tests(args): "scheduler_kwargs": build_scheduler_kwargs_from_args(args), "track_loss_history": args.track_loss_history, "track_overlap_metrics": args.track_overlap_metrics, + "early_stop_enabled": args.early_stop, + "early_stop_patience": args.early_stop_patience, + "early_stop_min_delta": args.early_stop_min_delta, + "early_stop_overlap_threshold": args.early_stop_overlap_threshold, + "early_stop_zero_overlap_patience": args.early_stop_zero_overlap_patience, "profile_tag": args.profile_tag, "torch_profiler_config": build_torch_profiler_config_from_args(args), } @@ -206,6 +218,17 @@ def run_all_tests(args): print(f" scheduler_kwargs: {training_config['scheduler_kwargs']}") print(f" track_loss_history: {training_config['track_loss_history']}") print(f" track_overlap_metrics: {training_config['track_overlap_metrics']}") + print(f" early_stop_enabled: {training_config['early_stop_enabled']}") + print(f" early_stop_patience: {training_config['early_stop_patience']}") + print(f" early_stop_min_delta: {training_config['early_stop_min_delta']}") + print( + " early_stop_overlap_threshold: " + f"{training_config['early_stop_overlap_threshold']}" + ) + print( + " early_stop_zero_overlap_patience: " + f"{training_config['early_stop_zero_overlap_patience']}" + ) print(f" workers: {max_workers}") print(f" torch_profile: {training_config['torch_profiler_config'].enabled}") print() From c77b190a186a5f6b707d3217a46fed693b59f4d6 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Wed, 22 Apr 2026 23:25:48 -0700 Subject: [PATCH 30/48] plot the placement images for the test runs too --- hyperparameter_search.py | 1 + test.py | 13 +++++++++++++ 2 files changed, 14 insertions(+) diff --git a/hyperparameter_search.py b/hyperparameter_search.py index fed80b0..e0f61c0 100644 --- a/hyperparameter_search.py +++ b/hyperparameter_search.py @@ -5,6 +5,7 @@ (2, 20, 1201), (3, 40, 1202), (4, 75, 1203), + (10, 2000, 1210) ] diff --git a/test.py b/test.py index ae6bb23..68eedb2 100644 --- a/test.py +++ b/test.py @@ -17,6 +17,7 @@ and evaluates them across the benchmark test cases. """ +import os import time from concurrent.futures import ProcessPoolExecutor, as_completed @@ -35,6 +36,7 @@ generate_placement_input, get_best_device, initialize_cell_positions, + plot_placement, seed_torch, train_placement, ) @@ -121,6 +123,14 @@ def run_placement_test( # Calculate final metrics using shared implementation final_cell_features = result["final_cell_features"] metrics = calculate_normalized_metrics(final_cell_features, pin_features, edge_list) + visualization_filename = f"placement_test_{test_id}_result.png" + plot_placement( + result["initial_cell_features"], + final_cell_features, + pin_features, + edge_list, + filename=visualization_filename, + ) return { "test_id": test_id, @@ -136,6 +146,7 @@ def run_placement_test( "num_cells_with_overlaps": metrics["num_cells_with_overlaps"], "overlap_ratio": metrics["overlap_ratio"], "normalized_wl": metrics["normalized_wl"], + "visualization_path": os.path.join(OUTPUT_DIR, visualization_filename), } @@ -174,6 +185,7 @@ def _run_tests_serial(test_cases, loss_tracking_db_path, training_config): print(f" Time: {result['elapsed_time']:.2f}s") if result["loss_history_path"] is not None: print(f" History: {result['loss_history_path']}") + print(f" Image: {result['visualization_path']}") print(f" Status: {status}") print() @@ -296,6 +308,7 @@ def run_all_tests(args): print(f" Time: {result['elapsed_time']:.2f}s") if result["loss_history_path"] is not None: print(f" History: {result['loss_history_path']}") + print(f" Image: {result['visualization_path']}") print(f" Status: {status}") print() except PermissionError: From 83ebc499f4f9a5a86de1d1052165423f77aa23e1 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 09:52:24 -0700 Subject: [PATCH 31/48] add initial cpp code --- .gitignore | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index cda004d..fc4b0cd 100644 --- a/.gitignore +++ b/.gitignore @@ -10,4 +10,9 @@ torch_profile/* loss_history/* loss_tracking/* **/__pycache__/** -temp.txt \ No newline at end of file +temp.txt + +# C++ build and vcpkg manifest artifacts +cpp/build/ +cpp/vcpkg_installed/ +cpp/.vcpkg-root From 89c2ca8cb131e19eb9d9af163e606a4492138c76 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 09:52:48 -0700 Subject: [PATCH 32/48] add initial cpp code --- cpp/CMakeLists.txt | 54 +++++++++++++++ cpp/CMakePresets.json | 25 +++++++ cpp/benchmark.cpp | 31 +++++++++ cpp/generation.cpp | 25 +++++++ cpp/include/placement/benchmark.h | 15 +++++ cpp/include/placement/generation.h | 15 +++++ cpp/include/placement/losses.h | 19 ++++++ cpp/include/placement/metrics.h | 14 ++++ cpp/include/placement/training.h | 13 ++++ cpp/include/placement/types.h | 103 +++++++++++++++++++++++++++++ cpp/losses.cpp | 32 +++++++++ cpp/main.cpp | 25 +++++++ cpp/metrics.cpp | 22 ++++++ cpp/training.cpp | 19 ++++++ cpp/vcpkg.json | 8 +++ 15 files changed, 420 insertions(+) create mode 100644 cpp/CMakeLists.txt create mode 100644 cpp/CMakePresets.json create mode 100644 cpp/benchmark.cpp create mode 100644 cpp/generation.cpp create mode 100644 cpp/include/placement/benchmark.h create mode 100644 cpp/include/placement/generation.h create mode 100644 cpp/include/placement/losses.h create mode 100644 cpp/include/placement/metrics.h create mode 100644 cpp/include/placement/training.h create mode 100644 cpp/include/placement/types.h create mode 100644 cpp/losses.cpp create mode 100644 cpp/main.cpp create mode 100644 cpp/metrics.cpp create mode 100644 cpp/training.cpp create mode 100644 cpp/vcpkg.json diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt new file mode 100644 index 0000000..95cdd75 --- /dev/null +++ b/cpp/CMakeLists.txt @@ -0,0 +1,54 @@ +cmake_minimum_required(VERSION 3.25) + +project(placement_cpp LANGUAGES CXX) + +set(CMAKE_CXX_STANDARD 20) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_CXX_EXTENSIONS OFF) + +# LibTorch is provided by the active Python environment rather than vcpkg. +# Prefer the repo-local virtualenv when present, then ask Python where the +# installed torch package exposes its CMake config files. +set(_repo_venv_python "${CMAKE_CURRENT_LIST_DIR}/../.venv/bin/python") +if(NOT Python3_EXECUTABLE AND EXISTS "${_repo_venv_python}") + set(Python3_EXECUTABLE "${_repo_venv_python}" CACHE FILEPATH "Python interpreter") +endif() + +find_package(Python3 COMPONENTS Interpreter REQUIRED) +execute_process( + COMMAND "${Python3_EXECUTABLE}" -c "import torch; print(torch.utils.cmake_prefix_path)" + OUTPUT_VARIABLE TORCH_CMAKE_PREFIX_PATH + OUTPUT_STRIP_TRAILING_WHITESPACE + RESULT_VARIABLE TORCH_CMAKE_PREFIX_RESULT +) +if(NOT TORCH_CMAKE_PREFIX_RESULT EQUAL 0) + message(FATAL_ERROR "Unable to import torch from ${Python3_EXECUTABLE}. Install torch in .venv or set Python3_EXECUTABLE.") +endif() +list(PREPEND CMAKE_PREFIX_PATH "${TORCH_CMAKE_PREFIX_PATH}") + +find_package(Torch CONFIG REQUIRED) +find_package(CLI11 CONFIG REQUIRED) + +add_library( + placement_core + benchmark.cpp + generation.cpp + losses.cpp + metrics.cpp + training.cpp +) +target_include_directories(placement_core PUBLIC "${CMAKE_CURRENT_LIST_DIR}/include") +target_link_libraries(placement_core PUBLIC "${TORCH_LIBRARIES}") +target_compile_features(placement_core PUBLIC cxx_std_20) + +add_executable(placement_smoke main.cpp) +target_link_libraries(placement_smoke PRIVATE placement_core CLI11::CLI11) +target_compile_features(placement_smoke PRIVATE cxx_std_20) + +if(MSVC) + target_compile_options(placement_core PRIVATE /W4) + target_compile_options(placement_smoke PRIVATE /W4) +else() + target_compile_options(placement_core PRIVATE -Wall -Wextra -Wpedantic) + target_compile_options(placement_smoke PRIVATE -Wall -Wextra -Wpedantic) +endif() diff --git a/cpp/CMakePresets.json b/cpp/CMakePresets.json new file mode 100644 index 0000000..5207832 --- /dev/null +++ b/cpp/CMakePresets.json @@ -0,0 +1,25 @@ +{ + "version": 6, + "configurePresets": [ + { + "name": "release", + "displayName": "Release", + "generator": "Ninja", + "binaryDir": "${sourceDir}/build", + "environment": { + "PATH": "/opt/homebrew/opt/libtool/libexec/gnubin:$penv{PATH}" + }, + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release", + "CMAKE_MAKE_PROGRAM": "/opt/homebrew/bin/ninja", + "CMAKE_TOOLCHAIN_FILE": "/Users/vrajpandya/vcpkg-shared/vcpkg/scripts/buildsystems/vcpkg.cmake" + } + } + ], + "buildPresets": [ + { + "name": "release", + "configurePreset": "release" + } + ] +} diff --git a/cpp/benchmark.cpp b/cpp/benchmark.cpp new file mode 100644 index 0000000..86a2d4f --- /dev/null +++ b/cpp/benchmark.cpp @@ -0,0 +1,31 @@ +#include "placement/benchmark.h" + +#include + +namespace placement { + +const std::vector& activeBenchmarkCases() { + static const std::vector cases = { + {1, 2, 20, 1001}, + {2, 3, 25, 1002}, + {3, 2, 30, 1003}, + {4, 3, 50, 1004}, + {5, 4, 75, 1005}, + {6, 5, 100, 1006}, + {7, 5, 150, 1007}, + {8, 7, 150, 1008}, + {9, 8, 200, 1009}, + {10, 10, 2000, 1010}, + }; + return cases; +} + +BenchmarkResult runBenchmarkCase( + const BenchmarkCase& test_case, + const TrainingConfig& config) { + (void)test_case; + (void)config; + throw std::logic_error("runBenchmarkCase is implemented in Step 6"); +} + +} // namespace placement diff --git a/cpp/generation.cpp b/cpp/generation.cpp new file mode 100644 index 0000000..a1978ae --- /dev/null +++ b/cpp/generation.cpp @@ -0,0 +1,25 @@ +#include "placement/generation.h" + +#include + +namespace placement { + +PlacementProblem generatePlacementInput( + int num_macros, + int num_std_cells, + const torch::Device& device, + bool verbose) { + (void)num_macros; + (void)num_std_cells; + (void)device; + (void)verbose; + throw std::logic_error("generatePlacementInput is implemented in Step 3"); +} + +void initializeCellPositions(torch::Tensor& cell_features, double spread_scale) { + (void)cell_features; + (void)spread_scale; + throw std::logic_error("initializeCellPositions is implemented in Step 3"); +} + +} // namespace placement diff --git a/cpp/include/placement/benchmark.h b/cpp/include/placement/benchmark.h new file mode 100644 index 0000000..d91acfc --- /dev/null +++ b/cpp/include/placement/benchmark.h @@ -0,0 +1,15 @@ +#pragma once + +#include "placement/types.h" + +#include + +namespace placement { + +const std::vector& activeBenchmarkCases(); + +BenchmarkResult runBenchmarkCase( + const BenchmarkCase& test_case, + const TrainingConfig& config = {}); + +} // namespace placement diff --git a/cpp/include/placement/generation.h b/cpp/include/placement/generation.h new file mode 100644 index 0000000..e5fa1eb --- /dev/null +++ b/cpp/include/placement/generation.h @@ -0,0 +1,15 @@ +#pragma once + +#include "placement/types.h" + +namespace placement { + +PlacementProblem generatePlacementInput( + int num_macros, + int num_std_cells, + const torch::Device& device = torch::kCPU, + bool verbose = true); + +void initializeCellPositions(torch::Tensor& cell_features, double spread_scale = 0.6); + +} // namespace placement diff --git a/cpp/include/placement/losses.h b/cpp/include/placement/losses.h new file mode 100644 index 0000000..326cfc5 --- /dev/null +++ b/cpp/include/placement/losses.h @@ -0,0 +1,19 @@ +#pragma once + +#include "placement/types.h" + +namespace placement { + +torch::Tensor computePairwiseOverlapAreas(const torch::Tensor& cell_features); + +torch::Tensor wirelengthAttractionLoss( + const torch::Tensor& cell_features, + const torch::Tensor& pin_features, + const torch::Tensor& edge_list); + +torch::Tensor overlapRepulsionLoss( + const torch::Tensor& cell_features, + const torch::Tensor& pin_features, + const torch::Tensor& edge_list); + +} // namespace placement diff --git a/cpp/include/placement/metrics.h b/cpp/include/placement/metrics.h new file mode 100644 index 0000000..e9e7ff7 --- /dev/null +++ b/cpp/include/placement/metrics.h @@ -0,0 +1,14 @@ +#pragma once + +#include "placement/types.h" + +namespace placement { + +OverlapMetrics calculateOverlapMetrics(const torch::Tensor& cell_features); + +Metrics calculateNormalizedMetrics( + const torch::Tensor& cell_features, + const torch::Tensor& pin_features, + const torch::Tensor& edge_list); + +} // namespace placement diff --git a/cpp/include/placement/training.h b/cpp/include/placement/training.h new file mode 100644 index 0000000..f54853d --- /dev/null +++ b/cpp/include/placement/training.h @@ -0,0 +1,13 @@ +#pragma once + +#include "placement/types.h" + +namespace placement { + +TrainingResult trainPlacement( + const torch::Tensor& cell_features, + const torch::Tensor& pin_features, + const torch::Tensor& edge_list, + const TrainingConfig& config = {}); + +} // namespace placement diff --git a/cpp/include/placement/types.h b/cpp/include/placement/types.h new file mode 100644 index 0000000..7f64368 --- /dev/null +++ b/cpp/include/placement/types.h @@ -0,0 +1,103 @@ +#pragma once + +#include + +#include +#include +#include + +namespace placement { + +enum class CellFeatureIdx : int64_t { + Area = 0, + NumPins = 1, + X = 2, + Y = 3, + Width = 4, + Height = 5, +}; + +enum class PinFeatureIdx : int64_t { + CellIdx = 0, + PinX = 1, + PinY = 2, + X = 3, + Y = 4, + Width = 5, + Height = 6, +}; + +struct PlacementProblem { + torch::Tensor cell_features; + torch::Tensor pin_features; + torch::Tensor edge_list; +}; + +struct TrainingConfig { + int num_epochs = 1000; + double lr = 0.1; + double lambda_wirelength = 3.0; + double lambda_overlap = 1.0; + std::string scheduler_name = "plateau"; + int scheduler_patience = 50; + double scheduler_factor = 0.5; + double scheduler_eta_min = 1e-4; + int scheduler_step_size = 100; + double scheduler_gamma = 0.95; + bool track_loss_history = false; + bool track_overlap_metrics = false; + bool early_stop_enabled = true; + int early_stop_patience = 75; + double early_stop_min_delta = 1e-4; + double early_stop_overlap_threshold = 1e-4; + int early_stop_zero_overlap_patience = 25; + bool verbose = true; + int log_interval = 100; +}; + +struct TrainingResult { + torch::Tensor final_cell_features; + torch::Tensor initial_cell_features; + bool stopped_early = false; + std::string stop_reason; + int best_epoch = -1; +}; + +struct OverlapMetrics { + int overlap_count = 0; + double total_overlap_area = 0.0; + double max_overlap_area = 0.0; + double overlap_percentage = 0.0; + int cells_with_overlap = 0; + bool has_zero_overlap = true; +}; + +struct Metrics { + double overlap_ratio = 0.0; + double normalized_wl = 0.0; + int num_cells_with_overlaps = 0; + int64_t total_cells = 0; + int64_t num_nets = 0; +}; + +struct BenchmarkCase { + int test_id = 0; + int num_macros = 0; + int num_std_cells = 0; + int seed = 0; +}; + +struct BenchmarkResult { + int test_id = 0; + int num_macros = 0; + int num_std_cells = 0; + int64_t total_cells = 0; + int64_t num_nets = 0; + int seed = 0; + double elapsed_seconds = 0.0; + int num_cells_with_overlaps = 0; + double overlap_ratio = 0.0; + double normalized_wl = 0.0; +}; + +} // namespace placement diff --git a/cpp/losses.cpp b/cpp/losses.cpp new file mode 100644 index 0000000..8190722 --- /dev/null +++ b/cpp/losses.cpp @@ -0,0 +1,32 @@ +#include "placement/losses.h" + +#include + +namespace placement { + +torch::Tensor computePairwiseOverlapAreas(const torch::Tensor& cell_features) { + (void)cell_features; + throw std::logic_error("computePairwiseOverlapAreas is implemented in Step 4"); +} + +torch::Tensor wirelengthAttractionLoss( + const torch::Tensor& cell_features, + const torch::Tensor& pin_features, + const torch::Tensor& edge_list) { + (void)cell_features; + (void)pin_features; + (void)edge_list; + return torch::zeros({}, torch::kFloat64); +} + +torch::Tensor overlapRepulsionLoss( + const torch::Tensor& cell_features, + const torch::Tensor& pin_features, + const torch::Tensor& edge_list) { + (void)cell_features; + (void)pin_features; + (void)edge_list; + return torch::zeros({}, torch::kFloat64); +} + +} // namespace placement diff --git a/cpp/main.cpp b/cpp/main.cpp new file mode 100644 index 0000000..3da73c7 --- /dev/null +++ b/cpp/main.cpp @@ -0,0 +1,25 @@ +#include +#include + +#include + +int main(int argc, char** argv) { + CLI::App app{"Placement C++ LibTorch smoke test"}; + bool print_tensor = false; + app.add_flag("--print-tensor", print_tensor, "Print the generated tensor"); + CLI11_PARSE(app, argc, argv); + + torch::manual_seed(66); + const torch::Tensor values = torch::rand({2, 3}, torch::kFloat32); + const torch::Tensor doubled = values * 2.0; + + std::cout << "LibTorch smoke test\n"; + std::cout << "Tensor sizes: " << values.sizes() << "\n"; + std::cout << "Mean doubled value: " << doubled.mean().item() << "\n"; + + if (print_tensor) { + std::cout << doubled << "\n"; + } + + return 0; +} diff --git a/cpp/metrics.cpp b/cpp/metrics.cpp new file mode 100644 index 0000000..435ecf0 --- /dev/null +++ b/cpp/metrics.cpp @@ -0,0 +1,22 @@ +#include "placement/metrics.h" + +namespace placement { + +OverlapMetrics calculateOverlapMetrics(const torch::Tensor& cell_features) { + OverlapMetrics metrics; + metrics.has_zero_overlap = cell_features.size(0) <= 1; + return metrics; +} + +Metrics calculateNormalizedMetrics( + const torch::Tensor& cell_features, + const torch::Tensor& pin_features, + const torch::Tensor& edge_list) { + (void)pin_features; + Metrics metrics; + metrics.total_cells = cell_features.size(0); + metrics.num_nets = edge_list.size(0); + return metrics; +} + +} // namespace placement diff --git a/cpp/training.cpp b/cpp/training.cpp new file mode 100644 index 0000000..73aa20b --- /dev/null +++ b/cpp/training.cpp @@ -0,0 +1,19 @@ +#include "placement/training.h" + +namespace placement { + +TrainingResult trainPlacement( + const torch::Tensor& cell_features, + const torch::Tensor& pin_features, + const torch::Tensor& edge_list, + const TrainingConfig& config) { + (void)pin_features; + (void)edge_list; + (void)config; + TrainingResult result; + result.initial_cell_features = cell_features.clone(); + result.final_cell_features = cell_features.clone(); + return result; +} + +} // namespace placement diff --git a/cpp/vcpkg.json b/cpp/vcpkg.json new file mode 100644 index 0000000..7b90084 --- /dev/null +++ b/cpp/vcpkg.json @@ -0,0 +1,8 @@ +{ + "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg-tool/main/docs/vcpkg.schema.json", + "name": "placement-cpp", + "version-string": "0.1.0", + "dependencies": [ + "cli11" + ] +} From edbfc31e84cc8cb636505677d03a715d22b62570 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 10:12:16 -0700 Subject: [PATCH 33/48] wip --- cpp/generation.cpp | 199 +++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 190 insertions(+), 9 deletions(-) diff --git a/cpp/generation.cpp b/cpp/generation.cpp index a1978ae..1260e81 100644 --- a/cpp/generation.cpp +++ b/cpp/generation.cpp @@ -1,25 +1,206 @@ #include "placement/generation.h" -#include +#include +#include +#include +#include +#include +#include +#include + +namespace { + +constexpr double kMinMacroArea = 100.0; +constexpr double kMaxMacroArea = 10000.0; +constexpr double kStandardCellHeight = 1.0; +constexpr int64_t kMinStandardCellPins = 3; +constexpr int64_t kMaxStandardCellPins = 6; +constexpr double kPinSize = 0.1; +constexpr double kTwoPi = 6.28318530717958647692; + +int64_t featureIndex(placement::CellFeatureIdx idx) { + return static_cast(idx); +} + +int64_t featureIndex(placement::PinFeatureIdx idx) { + return static_cast(idx); +} + +} // namespace namespace placement { +using namespace torch::indexing; + PlacementProblem generatePlacementInput( int num_macros, int num_std_cells, const torch::Device& device, bool verbose) { - (void)num_macros; - (void)num_std_cells; - (void)device; - (void)verbose; - throw std::logic_error("generatePlacementInput is implemented in Step 3"); + const int64_t macro_count = num_macros; + const int64_t std_cell_count = num_std_cells; + const int64_t total_cells = macro_count + std_cell_count; + auto float_options = torch::TensorOptions().dtype(torch::kFloat32).device(device); + auto long_options = torch::TensorOptions().dtype(torch::kInt64).device(device); + + auto macro_areas = + torch::rand({macro_count}, float_options) * (kMaxMacroArea - kMinMacroArea) + + kMinMacroArea; + + const auto standard_areas = + torch::tensor({1.0F, 2.0F, 3.0F}, float_options); + const auto std_area_indices = + torch::randint(0, standard_areas.size(0), {std_cell_count}, long_options); + auto std_cell_areas = standard_areas.index_select(0, std_area_indices); + auto areas = torch::cat({macro_areas, std_cell_areas}); + + auto macro_widths = torch::sqrt(macro_areas); + auto macro_heights = torch::sqrt(macro_areas); + auto std_cell_widths = std_cell_areas / kStandardCellHeight; + auto std_cell_heights = + torch::full({std_cell_count}, kStandardCellHeight, float_options); + auto cell_widths = torch::cat({macro_widths, std_cell_widths}); + auto cell_heights = torch::cat({macro_heights, std_cell_heights}); + + auto num_pins_per_cell = torch::zeros({total_cells}, long_options); + for (int64_t i = 0; i < macro_count; ++i) { + const int64_t sqrt_area = + static_cast(std::sqrt(macro_areas[i].item())); + num_pins_per_cell.index_put_( + {i}, + torch::randint(sqrt_area, 2 * sqrt_area + 1, {1}, long_options)[0]); + } + if (std_cell_count > 0) { + num_pins_per_cell.index_put_( + {Slice(macro_count, total_cells)}, + torch::randint( + kMinStandardCellPins, + kMaxStandardCellPins + 1, + {std_cell_count}, + long_options)); + } + + auto cell_features = torch::zeros({total_cells, 6}, float_options); + cell_features.index_put_({Slice(), featureIndex(CellFeatureIdx::Area)}, areas); + cell_features.index_put_( + {Slice(), featureIndex(CellFeatureIdx::NumPins)}, + num_pins_per_cell.to(torch::kFloat32)); + cell_features.index_put_({Slice(), featureIndex(CellFeatureIdx::X)}, 0.0); + cell_features.index_put_({Slice(), featureIndex(CellFeatureIdx::Y)}, 0.0); + cell_features.index_put_( + {Slice(), featureIndex(CellFeatureIdx::Width)}, + cell_widths); + cell_features.index_put_( + {Slice(), featureIndex(CellFeatureIdx::Height)}, + cell_heights); + + const int64_t total_pins = num_pins_per_cell.sum().item(); + auto pin_features = torch::zeros({total_pins, 7}, float_options); + + int64_t pin_idx = 0; + for (int64_t cell_idx = 0; cell_idx < total_cells; ++cell_idx) { + const int64_t n_pins = num_pins_per_cell[cell_idx].item(); + const double cell_width = cell_widths[cell_idx].item(); + const double cell_height = cell_heights[cell_idx].item(); + const double margin = kPinSize / 2.0; + + torch::Tensor pin_x; + torch::Tensor pin_y; + if (cell_width > 2.0 * margin && cell_height > 2.0 * margin) { + pin_x = torch::rand({n_pins}, float_options) * (cell_width - 2.0 * margin) + + margin; + pin_y = torch::rand({n_pins}, float_options) * (cell_height - 2.0 * margin) + + margin; + } else { + pin_x = torch::full({n_pins}, cell_width / 2.0, float_options); + pin_y = torch::full({n_pins}, cell_height / 2.0, float_options); + } + + const auto rows = Slice(pin_idx, pin_idx + n_pins); + pin_features.index_put_({rows, featureIndex(PinFeatureIdx::CellIdx)}, cell_idx); + pin_features.index_put_({rows, featureIndex(PinFeatureIdx::PinX)}, pin_x); + pin_features.index_put_({rows, featureIndex(PinFeatureIdx::PinY)}, pin_y); + pin_features.index_put_({rows, featureIndex(PinFeatureIdx::X)}, pin_x); + pin_features.index_put_({rows, featureIndex(PinFeatureIdx::Y)}, pin_y); + pin_features.index_put_({rows, featureIndex(PinFeatureIdx::Width)}, kPinSize); + pin_features.index_put_({rows, featureIndex(PinFeatureIdx::Height)}, kPinSize); + + pin_idx += n_pins; + } + + auto pin_to_cell = torch::zeros({total_pins}, long_options); + pin_idx = 0; + for (int64_t cell_idx = 0; cell_idx < total_cells; ++cell_idx) { + const int64_t n_pins = num_pins_per_cell[cell_idx].item(); + pin_to_cell.index_put_({Slice(pin_idx, pin_idx + n_pins)}, cell_idx); + pin_idx += n_pins; + } + + std::vector> edges; + std::vector> adjacency(total_pins); + for (int64_t pin = 0; pin < total_pins; ++pin) { + const int64_t num_connections = torch::randint(1, 4, {1}, long_options)[0].item(); + for (int64_t connection = 0; connection < num_connections; ++connection) { + const int64_t other_pin = + torch::randint(0, total_pins, {1}, long_options)[0].item(); + if (other_pin == pin || adjacency[pin].contains(other_pin)) { + continue; + } + edges.emplace_back(std::min(pin, other_pin), std::max(pin, other_pin)); + adjacency[pin].insert(other_pin); + adjacency[other_pin].insert(pin); + } + } + + torch::Tensor edge_list; + if (edges.empty()) { + edge_list = torch::zeros({0, 2}, long_options); + } else { + std::vector flat_edges; + flat_edges.reserve(edges.size() * 2); + for (const auto& edge : edges) { + flat_edges.push_back(edge.first); + flat_edges.push_back(edge.second); + } + edge_list = torch::from_blob( + flat_edges.data(), + {static_cast(edges.size()), 2}, + torch::TensorOptions().dtype(torch::kInt64)) + .clone() + .to(device); + } + + if (verbose) { + std::cout << "\nGenerated placement data:\n"; + std::cout << " Total cells: " << total_cells << "\n"; + std::cout << " Total pins: " << total_pins << "\n"; + std::cout << " Total edges: " << edge_list.size(0) << "\n"; + const double avg_edges_per_pin = + total_pins == 0 ? 0.0 : 2.0 * static_cast(edge_list.size(0)) / total_pins; + std::cout << " Average edges per pin: " << avg_edges_per_pin << "\n"; + } + + return {cell_features, pin_features, edge_list}; } void initializeCellPositions(torch::Tensor& cell_features, double spread_scale) { - (void)cell_features; - (void)spread_scale; - throw std::logic_error("initializeCellPositions is implemented in Step 3"); + const int64_t total_cells = cell_features.size(0); + const double total_area = + cell_features.index({Slice(), featureIndex(CellFeatureIdx::Area)}) + .sum() + .item(); + const double spread_radius = + std::max(std::sqrt(total_area) * spread_scale, 1.0); + const auto options = cell_features.options(); + + const auto angles = torch::rand({total_cells}, options) * kTwoPi; + const auto radii = torch::rand({total_cells}, options) * spread_radius; + cell_features.index_put_( + {Slice(), featureIndex(CellFeatureIdx::X)}, + radii * torch::cos(angles)); + cell_features.index_put_( + {Slice(), featureIndex(CellFeatureIdx::Y)}, + radii * torch::sin(angles)); } } // namespace placement From b9af41037191b134a7c373959e3c289ba94b3e63 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 10:46:33 -0700 Subject: [PATCH 34/48] add initial unit test --- cpp/CMakeLists.txt | 15 +++++ cpp/metrics.cpp | 161 ++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 174 insertions(+), 2 deletions(-) diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index 95cdd75..55d3a53 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -2,6 +2,8 @@ cmake_minimum_required(VERSION 3.25) project(placement_cpp LANGUAGES CXX) +include(CTest) + set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) @@ -45,10 +47,23 @@ add_executable(placement_smoke main.cpp) target_link_libraries(placement_smoke PRIVATE placement_core CLI11::CLI11) target_compile_features(placement_smoke PRIVATE cxx_std_20) +if(BUILD_TESTING) + add_executable(placement_unit_tests tests/metrics_tests.cpp) + target_link_libraries(placement_unit_tests PRIVATE placement_core) + target_compile_features(placement_unit_tests PRIVATE cxx_std_20) + add_test(NAME placement_unit_tests COMMAND placement_unit_tests) +endif() + if(MSVC) target_compile_options(placement_core PRIVATE /W4) target_compile_options(placement_smoke PRIVATE /W4) + if(TARGET placement_unit_tests) + target_compile_options(placement_unit_tests PRIVATE /W4) + endif() else() target_compile_options(placement_core PRIVATE -Wall -Wextra -Wpedantic) target_compile_options(placement_smoke PRIVATE -Wall -Wextra -Wpedantic) + if(TARGET placement_unit_tests) + target_compile_options(placement_unit_tests PRIVATE -Wall -Wextra -Wpedantic) + endif() endif() diff --git a/cpp/metrics.cpp b/cpp/metrics.cpp index 435ecf0..3fad55b 100644 --- a/cpp/metrics.cpp +++ b/cpp/metrics.cpp @@ -1,10 +1,144 @@ #include "placement/metrics.h" +#include +#include +#include +#include + +namespace { + +using namespace torch::indexing; + +int64_t featureIndex(placement::CellFeatureIdx idx) { + return static_cast(idx); +} + +int64_t featureIndex(placement::PinFeatureIdx idx) { + return static_cast(idx); +} + +int toMetricInt(int64_t value) { + return static_cast( + std::min(value, std::numeric_limits::max())); +} + +torch::Tensor upperTriangleMask(int64_t size, const torch::Device& device) { + const auto options = torch::TensorOptions().dtype(torch::kInt64).device(device); + const auto indices = torch::arange(size, options); + return indices.unsqueeze(1) < indices.unsqueeze(0); +} + +torch::Tensor computePairwiseOverlapAreasForMetrics( + const torch::Tensor& cell_features) { + const int64_t num_cells = cell_features.size(0); + if (num_cells <= 1) { + return torch::zeros({num_cells, num_cells}, cell_features.options()); + } + + const auto x_col = + cell_features.index({Slice(), featureIndex(placement::CellFeatureIdx::X)}); + const auto y_col = + cell_features.index({Slice(), featureIndex(placement::CellFeatureIdx::Y)}); + const auto widths = + cell_features.index({Slice(), featureIndex(placement::CellFeatureIdx::Width)}); + const auto heights = + cell_features.index({Slice(), featureIndex(placement::CellFeatureIdx::Height)}); + + const auto x_delta = torch::abs(x_col.unsqueeze(1) - x_col.unsqueeze(0)); + const auto y_delta = torch::abs(y_col.unsqueeze(1) - y_col.unsqueeze(0)); + const auto x_span = (widths.unsqueeze(1) + widths.unsqueeze(0)) / 2.0; + const auto y_span = (heights.unsqueeze(1) + heights.unsqueeze(0)) / 2.0; + + const auto overlap_x = torch::relu(x_span - x_delta); + const auto overlap_y = torch::relu(y_span - y_delta); + return overlap_x * overlap_y; +} + +double calculateAverageSmoothWirelength( + const torch::Tensor& cell_features, + const torch::Tensor& pin_features, + const torch::Tensor& edge_list) { + const int64_t num_edges = edge_list.size(0); + if (num_edges == 0) { + return 0.0; + } + + const auto cell_positions = cell_features.index( + {Slice(), + Slice( + featureIndex(placement::CellFeatureIdx::X), + featureIndex(placement::CellFeatureIdx::Y) + 1)}); + const auto cell_indices = + pin_features.index({Slice(), featureIndex(placement::PinFeatureIdx::CellIdx)}) + .to(torch::kInt64); + const auto pin_cell_positions = cell_positions.index_select(0, cell_indices); + + const auto pin_absolute_x = + pin_cell_positions.index({Slice(), 0}) + + pin_features.index({Slice(), featureIndex(placement::PinFeatureIdx::PinX)}); + const auto pin_absolute_y = + pin_cell_positions.index({Slice(), 1}) + + pin_features.index({Slice(), featureIndex(placement::PinFeatureIdx::PinY)}); + + const auto src_pins = edge_list.index({Slice(), 0}).to(torch::kInt64); + const auto tgt_pins = edge_list.index({Slice(), 1}).to(torch::kInt64); + + const auto dx = torch::abs( + pin_absolute_x.index_select(0, src_pins) - + pin_absolute_x.index_select(0, tgt_pins)); + const auto dy = torch::abs( + pin_absolute_y.index_select(0, src_pins) - + pin_absolute_y.index_select(0, tgt_pins)); + + constexpr double kAlpha = 0.1; + const auto smooth_manhattan = + kAlpha * torch::logsumexp(torch::stack({dx / kAlpha, dy / kAlpha}, 0), 0); + + return smooth_manhattan.mean().item(); +} + +} // namespace + namespace placement { OverlapMetrics calculateOverlapMetrics(const torch::Tensor& cell_features) { OverlapMetrics metrics; - metrics.has_zero_overlap = cell_features.size(0) <= 1; + const int64_t num_cells = cell_features.size(0); + if (num_cells <= 1) { + return metrics; + } + + const auto pairwise_overlap_area = + computePairwiseOverlapAreasForMetrics(cell_features); + const auto mask = upperTriangleMask(num_cells, cell_features.device()); + const auto active_overlap_areas = pairwise_overlap_area.masked_select(mask); + const auto overlapping_pairs = active_overlap_areas > 0; + + const int64_t overlap_count = overlapping_pairs.sum().item(); + metrics.overlap_count = toMetricInt(overlap_count); + metrics.total_overlap_area = active_overlap_areas.sum().item(); + metrics.max_overlap_area = + active_overlap_areas.numel() == 0 + ? 0.0 + : active_overlap_areas.max().item(); + + const auto upper_overlap_matrix = + torch::logical_and(pairwise_overlap_area > 0, mask); + const auto overlap_matrix = + torch::logical_or(upper_overlap_matrix, upper_overlap_matrix.transpose(0, 1)); + metrics.cells_with_overlap = + toMetricInt(overlap_matrix.any(0).sum().item()); + + const double total_area = + cell_features.index({Slice(), featureIndex(CellFeatureIdx::Area)}) + .sum() + .item(); + metrics.overlap_percentage = + total_area > 0.0 + ? static_cast(overlap_count) / static_cast(num_cells) * + 100.0 + : 0.0; + metrics.has_zero_overlap = metrics.overlap_count == 0; return metrics; } @@ -12,10 +146,33 @@ Metrics calculateNormalizedMetrics( const torch::Tensor& cell_features, const torch::Tensor& pin_features, const torch::Tensor& edge_list) { - (void)pin_features; Metrics metrics; metrics.total_cells = cell_features.size(0); metrics.num_nets = edge_list.size(0); + + const OverlapMetrics overlap_metrics = calculateOverlapMetrics(cell_features); + metrics.num_cells_with_overlaps = overlap_metrics.cells_with_overlap; + metrics.overlap_ratio = + metrics.total_cells > 0 + ? static_cast(metrics.num_cells_with_overlaps) / + static_cast(metrics.total_cells) + : 0.0; + + if (metrics.num_nets == 0) { + return metrics; + } + + const double total_area = + cell_features.index({Slice(), featureIndex(CellFeatureIdx::Area)}) + .sum() + .item(); + if (total_area <= 0.0) { + return metrics; + } + + metrics.normalized_wl = + calculateAverageSmoothWirelength(cell_features, pin_features, edge_list) / + std::sqrt(total_area); return metrics; } From c13e187dbae98d703672aa39cbecabe36a56341f Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 11:22:16 -0700 Subject: [PATCH 35/48] add loss functions, tests and test coverage --- .gitignore | 1 + cpp/CMakeLists.txt | 81 ++++++++++++ cpp/CMakePresets.json | 19 +++ cpp/cmake/RunCoverage.cmake | 70 ++++++++++ cpp/losses.cpp | 100 +++++++++++++-- cpp/tests/metrics_tests.cpp | 247 ++++++++++++++++++++++++++++++++++++ 6 files changed, 509 insertions(+), 9 deletions(-) create mode 100644 cpp/cmake/RunCoverage.cmake create mode 100644 cpp/tests/metrics_tests.cpp diff --git a/.gitignore b/.gitignore index fc4b0cd..5309e84 100644 --- a/.gitignore +++ b/.gitignore @@ -14,5 +14,6 @@ temp.txt # C++ build and vcpkg manifest artifacts cpp/build/ +cpp/build-coverage/ cpp/vcpkg_installed/ cpp/.vcpkg-root diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index 55d3a53..50678a1 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -4,10 +4,58 @@ project(placement_cpp LANGUAGES CXX) include(CTest) +option(PLACEMENT_ENABLE_COVERAGE "Enable LLVM source-based coverage for unit tests" OFF) + set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) +if(PLACEMENT_ENABLE_COVERAGE) + if(NOT CMAKE_CXX_COMPILER_ID MATCHES "Clang") + message(FATAL_ERROR "PLACEMENT_ENABLE_COVERAGE requires a Clang-compatible compiler") + endif() + + find_program(LLVM_PROFDATA_EXECUTABLE llvm-profdata) + if(NOT LLVM_PROFDATA_EXECUTABLE) + execute_process( + COMMAND xcrun -f llvm-profdata + OUTPUT_VARIABLE LLVM_PROFDATA_EXECUTABLE + OUTPUT_STRIP_TRAILING_WHITESPACE + RESULT_VARIABLE LLVM_PROFDATA_RESULT + ) + if(NOT LLVM_PROFDATA_RESULT EQUAL 0) + message(FATAL_ERROR "Unable to find llvm-profdata") + endif() + endif() + + find_program(LLVM_COV_EXECUTABLE llvm-cov) + if(NOT LLVM_COV_EXECUTABLE) + execute_process( + COMMAND xcrun -f llvm-cov + OUTPUT_VARIABLE LLVM_COV_EXECUTABLE + OUTPUT_STRIP_TRAILING_WHITESPACE + RESULT_VARIABLE LLVM_COV_RESULT + ) + if(NOT LLVM_COV_RESULT EQUAL 0) + message(FATAL_ERROR "Unable to find llvm-cov") + endif() + endif() +endif() + +function(enable_placement_coverage target_name) + if(PLACEMENT_ENABLE_COVERAGE) + target_compile_options( + ${target_name} + PRIVATE + -fprofile-instr-generate + -fcoverage-mapping + -O0 + -g + ) + target_link_options(${target_name} PRIVATE -fprofile-instr-generate) + endif() +endfunction() + # LibTorch is provided by the active Python environment rather than vcpkg. # Prefer the repo-local virtualenv when present, then ask Python where the # installed torch package exposes its CMake config files. @@ -15,6 +63,20 @@ set(_repo_venv_python "${CMAKE_CURRENT_LIST_DIR}/../.venv/bin/python") if(NOT Python3_EXECUTABLE AND EXISTS "${_repo_venv_python}") set(Python3_EXECUTABLE "${_repo_venv_python}" CACHE FILEPATH "Python interpreter") endif() +if(NOT Python3_EXECUTABLE) + find_program(_path_python3 NAMES python3 python) + if(_path_python3) + execute_process( + COMMAND "${_path_python3}" -c "import torch" + RESULT_VARIABLE _path_python3_torch_result + OUTPUT_QUIET + ERROR_QUIET + ) + if(_path_python3_torch_result EQUAL 0) + set(Python3_EXECUTABLE "${_path_python3}" CACHE FILEPATH "Python interpreter") + endif() + endif() +endif() find_package(Python3 COMPONENTS Interpreter REQUIRED) execute_process( @@ -42,16 +104,35 @@ add_library( target_include_directories(placement_core PUBLIC "${CMAKE_CURRENT_LIST_DIR}/include") target_link_libraries(placement_core PUBLIC "${TORCH_LIBRARIES}") target_compile_features(placement_core PUBLIC cxx_std_20) +enable_placement_coverage(placement_core) add_executable(placement_smoke main.cpp) target_link_libraries(placement_smoke PRIVATE placement_core CLI11::CLI11) target_compile_features(placement_smoke PRIVATE cxx_std_20) +enable_placement_coverage(placement_smoke) if(BUILD_TESTING) add_executable(placement_unit_tests tests/metrics_tests.cpp) target_link_libraries(placement_unit_tests PRIVATE placement_core) target_compile_features(placement_unit_tests PRIVATE cxx_std_20) + enable_placement_coverage(placement_unit_tests) add_test(NAME placement_unit_tests COMMAND placement_unit_tests) + + if(PLACEMENT_ENABLE_COVERAGE) + add_custom_target( + placement_coverage + COMMAND + "${CMAKE_COMMAND}" + -DTEST_EXECUTABLE=$ + -DLLVM_PROFDATA="${LLVM_PROFDATA_EXECUTABLE}" + -DLLVM_COV="${LLVM_COV_EXECUTABLE}" + -DSOURCE_DIR="${CMAKE_CURRENT_SOURCE_DIR}" + -DCOVERAGE_DIR="${CMAKE_BINARY_DIR}/coverage" + -P "${CMAKE_CURRENT_SOURCE_DIR}/cmake/RunCoverage.cmake" + DEPENDS placement_unit_tests + USES_TERMINAL + ) + endif() endif() if(MSVC) diff --git a/cpp/CMakePresets.json b/cpp/CMakePresets.json index 5207832..33c0da5 100644 --- a/cpp/CMakePresets.json +++ b/cpp/CMakePresets.json @@ -14,12 +14,31 @@ "CMAKE_MAKE_PROGRAM": "/opt/homebrew/bin/ninja", "CMAKE_TOOLCHAIN_FILE": "/Users/vrajpandya/vcpkg-shared/vcpkg/scripts/buildsystems/vcpkg.cmake" } + }, + { + "name": "coverage", + "displayName": "Coverage", + "generator": "Ninja", + "binaryDir": "${sourceDir}/build-coverage", + "environment": { + "PATH": "/opt/homebrew/opt/libtool/libexec/gnubin:$penv{PATH}" + }, + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug", + "CMAKE_MAKE_PROGRAM": "/opt/homebrew/bin/ninja", + "CMAKE_TOOLCHAIN_FILE": "/Users/vrajpandya/vcpkg-shared/vcpkg/scripts/buildsystems/vcpkg.cmake", + "PLACEMENT_ENABLE_COVERAGE": "ON" + } } ], "buildPresets": [ { "name": "release", "configurePreset": "release" + }, + { + "name": "coverage", + "configurePreset": "coverage" } ] } diff --git a/cpp/cmake/RunCoverage.cmake b/cpp/cmake/RunCoverage.cmake new file mode 100644 index 0000000..08eb531 --- /dev/null +++ b/cpp/cmake/RunCoverage.cmake @@ -0,0 +1,70 @@ +foreach(required_var TEST_EXECUTABLE LLVM_PROFDATA LLVM_COV SOURCE_DIR COVERAGE_DIR) + if(NOT DEFINED ${required_var} OR "${${required_var}}" STREQUAL "") + message(FATAL_ERROR "Missing required coverage variable: ${required_var}") + endif() +endforeach() + +set(raw_profile "${COVERAGE_DIR}/placement_unit_tests.profraw") +set(profile_data "${COVERAGE_DIR}/placement_unit_tests.profdata") +set(report_file "${COVERAGE_DIR}/placement_unit_tests.txt") +set(html_dir "${COVERAGE_DIR}/html") + +file(REMOVE_RECURSE "${COVERAGE_DIR}") +file(MAKE_DIRECTORY "${COVERAGE_DIR}") + +execute_process( + COMMAND + "${CMAKE_COMMAND}" -E env + "LLVM_PROFILE_FILE=${raw_profile}" + "${TEST_EXECUTABLE}" + RESULT_VARIABLE test_result +) +if(NOT test_result EQUAL 0) + message(FATAL_ERROR "placement_unit_tests failed during coverage run") +endif() + +execute_process( + COMMAND "${LLVM_PROFDATA}" merge -sparse "${raw_profile}" -o "${profile_data}" + RESULT_VARIABLE profdata_result +) +if(NOT profdata_result EQUAL 0) + message(FATAL_ERROR "llvm-profdata failed") +endif() + +set(covered_sources + "${SOURCE_DIR}/generation.cpp" + "${SOURCE_DIR}/losses.cpp" + "${SOURCE_DIR}/metrics.cpp" +) + +execute_process( + COMMAND + "${LLVM_COV}" report + "${TEST_EXECUTABLE}" + "-instr-profile=${profile_data}" + ${covered_sources} + OUTPUT_VARIABLE coverage_report + RESULT_VARIABLE report_result +) +if(NOT report_result EQUAL 0) + message(FATAL_ERROR "llvm-cov report failed") +endif() +file(WRITE "${report_file}" "${coverage_report}") + +execute_process( + COMMAND + "${LLVM_COV}" show + "${TEST_EXECUTABLE}" + "-instr-profile=${profile_data}" + "-format=html" + "-output-dir=${html_dir}" + ${covered_sources} + RESULT_VARIABLE html_result +) +if(NOT html_result EQUAL 0) + message(FATAL_ERROR "llvm-cov html report failed") +endif() + +message(STATUS "Coverage text report: ${report_file}") +message(STATUS "Coverage HTML report: ${html_dir}/index.html") +message("${coverage_report}") diff --git a/cpp/losses.cpp b/cpp/losses.cpp index 8190722..e77a506 100644 --- a/cpp/losses.cpp +++ b/cpp/losses.cpp @@ -1,32 +1,114 @@ #include "placement/losses.h" -#include +#include + +namespace { + +using namespace torch::indexing; + +int64_t featureIndex(placement::CellFeatureIdx idx) { + return static_cast(idx); +} + +int64_t featureIndex(placement::PinFeatureIdx idx) { + return static_cast(idx); +} + +torch::Tensor differentiableZero(const torch::Tensor& like) { + auto zero = torch::zeros({}, like.options()); + zero.set_requires_grad(true); + return zero; +} + +} // namespace namespace placement { torch::Tensor computePairwiseOverlapAreas(const torch::Tensor& cell_features) { - (void)cell_features; - throw std::logic_error("computePairwiseOverlapAreas is implemented in Step 4"); + const int64_t num_cells = cell_features.size(0); + if (num_cells <= 1) { + return torch::zeros({num_cells, num_cells}, cell_features.options()); + } + + const auto x_col = + cell_features.index({Slice(), featureIndex(CellFeatureIdx::X)}); + const auto y_col = + cell_features.index({Slice(), featureIndex(CellFeatureIdx::Y)}); + const auto widths = + cell_features.index({Slice(), featureIndex(CellFeatureIdx::Width)}); + const auto heights = + cell_features.index({Slice(), featureIndex(CellFeatureIdx::Height)}); + + const auto x_delta = torch::abs(x_col.unsqueeze(1) - x_col.unsqueeze(0)); + const auto y_delta = torch::abs(y_col.unsqueeze(1) - y_col.unsqueeze(0)); + const auto x_span = (widths.unsqueeze(1) + widths.unsqueeze(0)) / 2.0; + const auto y_span = (heights.unsqueeze(1) + heights.unsqueeze(0)) / 2.0; + + const auto overlap_x = torch::relu(x_span - x_delta); + const auto overlap_y = torch::relu(y_span - y_delta); + return overlap_x * overlap_y; } torch::Tensor wirelengthAttractionLoss( const torch::Tensor& cell_features, const torch::Tensor& pin_features, const torch::Tensor& edge_list) { - (void)cell_features; - (void)pin_features; - (void)edge_list; - return torch::zeros({}, torch::kFloat64); + const int64_t num_edges = edge_list.size(0); + if (num_edges == 0) { + return differentiableZero(cell_features); + } + + const auto cell_positions = cell_features.index( + {Slice(), + Slice( + featureIndex(CellFeatureIdx::X), + featureIndex(CellFeatureIdx::Y) + 1)}); + const auto cell_indices = + pin_features.index({Slice(), featureIndex(PinFeatureIdx::CellIdx)}) + .to(torch::kInt64); + + const auto pin_cell_positions = cell_positions.index_select(0, cell_indices); + const auto pin_absolute_x = + pin_cell_positions.index({Slice(), 0}) + + pin_features.index({Slice(), featureIndex(PinFeatureIdx::PinX)}); + const auto pin_absolute_y = + pin_cell_positions.index({Slice(), 1}) + + pin_features.index({Slice(), featureIndex(PinFeatureIdx::PinY)}); + + const auto src_pins = edge_list.index({Slice(), 0}).to(torch::kInt64); + const auto tgt_pins = edge_list.index({Slice(), 1}).to(torch::kInt64); + + const auto src_x = pin_absolute_x.index_select(0, src_pins); + const auto src_y = pin_absolute_y.index_select(0, src_pins); + const auto tgt_x = pin_absolute_x.index_select(0, tgt_pins); + const auto tgt_y = pin_absolute_y.index_select(0, tgt_pins); + + constexpr double kAlpha = 0.1; + const auto dx = torch::abs(src_x - tgt_x); + const auto dy = torch::abs(src_y - tgt_y); + const auto smooth_manhattan = + kAlpha * torch::logsumexp(torch::stack({dx / kAlpha, dy / kAlpha}, 0), 0); + + return smooth_manhattan.sum() / static_cast(num_edges); } torch::Tensor overlapRepulsionLoss( const torch::Tensor& cell_features, const torch::Tensor& pin_features, const torch::Tensor& edge_list) { - (void)cell_features; (void)pin_features; (void)edge_list; - return torch::zeros({}, torch::kFloat64); + + const int64_t num_cells = cell_features.size(0); + if (num_cells <= 1) { + return differentiableZero(cell_features); + } + + const auto pairwise_overlap_area = computePairwiseOverlapAreas(cell_features); + const auto mask = torch::triu(torch::ones_like(pairwise_overlap_area), 1); + + constexpr double kOverlapScalar = 200.0; + return torch::log1p(torch::sum(pairwise_overlap_area * mask)) * kOverlapScalar; } } // namespace placement diff --git a/cpp/tests/metrics_tests.cpp b/cpp/tests/metrics_tests.cpp new file mode 100644 index 0000000..f20514e --- /dev/null +++ b/cpp/tests/metrics_tests.cpp @@ -0,0 +1,247 @@ +#include "placement/generation.h" +#include "placement/losses.h" +#include "placement/metrics.h" + +#include + +#include +#include +#include +#include + +namespace { + +void expect(bool condition, const std::string& message) { + if (!condition) { + throw std::runtime_error(message); + } +} + +void expectNear( + double actual, + double expected, + double tolerance, + const std::string& message) { + if (std::abs(actual - expected) > tolerance) { + throw std::runtime_error( + message + ": actual=" + std::to_string(actual) + + " expected=" + std::to_string(expected)); + } +} + +void deterministicMetricsMatchPythonReference() { + const auto float_options = torch::TensorOptions().dtype(torch::kFloat32); + const auto long_options = torch::TensorOptions().dtype(torch::kInt64); + + const auto cell_features = torch::tensor( + { + {4.0F, 1.0F, 0.0F, 0.0F, 2.0F, 2.0F}, + {4.0F, 1.0F, 1.0F, 0.0F, 2.0F, 2.0F}, + {1.0F, 1.0F, 10.0F, 10.0F, 1.0F, 1.0F}, + }, + float_options); + const auto pin_features = torch::tensor( + { + {0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}, + {1.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}, + {2.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}, + }, + float_options); + const auto edge_list = torch::tensor({{0LL, 2LL}}, long_options); + + const placement::OverlapMetrics overlap = + placement::calculateOverlapMetrics(cell_features); + expect(overlap.overlap_count == 1, "expected one overlapping pair"); + expectNear(overlap.total_overlap_area, 2.0, 1e-5, "total overlap area"); + expectNear(overlap.max_overlap_area, 2.0, 1e-5, "max overlap area"); + expectNear(overlap.overlap_percentage, 100.0 / 3.0, 1e-5, "overlap percentage"); + expect(overlap.cells_with_overlap == 2, "expected two cells with overlap"); + expect(!overlap.has_zero_overlap, "expected nonzero overlap flag"); + + const placement::Metrics metrics = + placement::calculateNormalizedMetrics(cell_features, pin_features, edge_list); + expect(metrics.total_cells == 3, "expected three total cells"); + expect(metrics.num_nets == 1, "expected one net"); + expect(metrics.num_cells_with_overlaps == 2, "expected two overlapping cells"); + expectNear(metrics.overlap_ratio, 2.0 / 3.0, 1e-6, "overlap ratio"); + + const double smooth_wirelength = 10.0 + 0.1 * std::log(2.0); + expectNear( + metrics.normalized_wl, + smooth_wirelength / 3.0, + 1e-5, + "normalized wirelength"); + + const auto no_edges = torch::zeros({0, 2}, long_options); + const placement::Metrics no_edge_metrics = + placement::calculateNormalizedMetrics(cell_features, pin_features, no_edges); + expectNear(no_edge_metrics.normalized_wl, 0.0, 1e-12, "zero-edge wirelength"); +} + +void generatedProblemCanBeMeasured() { + torch::manual_seed(66); + placement::PlacementProblem problem = + placement::generatePlacementInput(2, 5, torch::kCPU, false); + + expect(problem.cell_features.size(0) == 7, "generated cell count"); + expect(problem.cell_features.size(1) == 6, "generated cell feature width"); + expect(problem.pin_features.size(1) == 7, "generated pin feature width"); + expect(problem.edge_list.size(1) == 2, "generated edge width"); + + placement::initializeCellPositions(problem.cell_features); + const placement::Metrics metrics = placement::calculateNormalizedMetrics( + problem.cell_features, + problem.pin_features, + problem.edge_list); + + expect(metrics.total_cells == 7, "metrics total cell count"); + expect(metrics.num_nets == problem.edge_list.size(0), "metrics net count"); + expect( + metrics.num_cells_with_overlaps >= 0 && + metrics.num_cells_with_overlaps <= metrics.total_cells, + "overlapping cell count range"); + expect( + metrics.overlap_ratio >= 0.0 && metrics.overlap_ratio <= 1.0, + "overlap ratio range"); + expect(std::isfinite(metrics.normalized_wl), "finite normalized wirelength"); + expect(metrics.normalized_wl >= 0.0, "nonnegative normalized wirelength"); +} + +void deterministicLossesMatchPythonReference() { + const auto float_options = torch::TensorOptions().dtype(torch::kFloat32); + const auto long_options = torch::TensorOptions().dtype(torch::kInt64); + + const auto cell_features = torch::tensor( + { + {4.0F, 1.0F, 0.0F, 0.0F, 2.0F, 2.0F}, + {4.0F, 1.0F, 1.0F, 0.0F, 2.0F, 2.0F}, + {1.0F, 1.0F, 10.0F, 10.0F, 1.0F, 1.0F}, + }, + float_options); + const auto pin_features = torch::tensor( + { + {0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}, + {1.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}, + {2.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}, + }, + float_options); + const auto edge_list = torch::tensor({{0LL, 2LL}}, long_options); + + const auto pairwise_overlap = + placement::computePairwiseOverlapAreas(cell_features); + const auto expected_pairwise_overlap = torch::tensor( + { + {4.0F, 2.0F, 0.0F}, + {2.0F, 4.0F, 0.0F}, + {0.0F, 0.0F, 1.0F}, + }, + float_options); + expect( + torch::allclose(pairwise_overlap, expected_pairwise_overlap), + "pairwise overlap areas"); + + const double smooth_wirelength = 10.0 + 0.1 * std::log(2.0); + expectNear( + placement::wirelengthAttractionLoss(cell_features, pin_features, edge_list) + .item(), + smooth_wirelength, + 1e-5, + "wirelength attraction loss"); + + expectNear( + placement::overlapRepulsionLoss(cell_features, pin_features, edge_list) + .item(), + std::log1p(2.0) * 200.0, + 1e-4, + "overlap repulsion loss"); +} + +void lossEdgeCasesStayFinite() { + const auto float_options = torch::TensorOptions().dtype(torch::kFloat32); + const auto long_options = torch::TensorOptions().dtype(torch::kInt64); + + const auto single_cell = torch::tensor( + {{4.0F, 1.0F, 0.0F, 0.0F, 2.0F, 2.0F}}, + float_options); + const auto single_pin = torch::tensor( + {{0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}}, + float_options); + const auto no_edges = torch::zeros({0, 2}, long_options); + + const auto single_overlap = + placement::computePairwiseOverlapAreas(single_cell); + expect(single_overlap.size(0) == 1, "single-cell overlap row count"); + expect(single_overlap.size(1) == 1, "single-cell overlap column count"); + expectNear( + placement::wirelengthAttractionLoss(single_cell, single_pin, no_edges) + .item(), + 0.0, + 1e-12, + "zero-edge wirelength loss"); + expectNear( + placement::overlapRepulsionLoss(single_cell, single_pin, no_edges) + .item(), + 0.0, + 1e-12, + "single-cell overlap loss"); +} + +void lossesBackpropagateThroughCellPositions() { + const auto float_options = torch::TensorOptions().dtype(torch::kFloat32); + const auto long_options = torch::TensorOptions().dtype(torch::kInt64); + + const auto cell_static_prefix = torch::tensor( + { + {4.0F, 1.0F}, + {4.0F, 1.0F}, + }, + float_options); + auto positions = torch::tensor( + { + {0.0F, 0.0F}, + {1.0F, 0.0F}, + }, + float_options.requires_grad(true)); + const auto cell_static_suffix = torch::tensor( + { + {2.0F, 2.0F}, + {2.0F, 2.0F}, + }, + float_options); + const auto cell_features = + torch::cat({cell_static_prefix, positions, cell_static_suffix}, 1); + const auto pin_features = torch::tensor( + { + {0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}, + {1.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}, + }, + float_options); + const auto edge_list = torch::tensor({{0LL, 1LL}}, long_options); + + const auto loss = + placement::wirelengthAttractionLoss(cell_features, pin_features, edge_list) + + placement::overlapRepulsionLoss(cell_features, pin_features, edge_list); + loss.backward(); + + expect(positions.grad().defined(), "positions gradient is defined"); + expect(torch::all(torch::isfinite(positions.grad())).item(), "finite gradients"); + expect(positions.grad().abs().sum().item() > 0.0, "nonzero gradients"); +} + +} // namespace + +int main() { + try { + deterministicMetricsMatchPythonReference(); + generatedProblemCanBeMeasured(); + deterministicLossesMatchPythonReference(); + lossEdgeCasesStayFinite(); + lossesBackpropagateThroughCellPositions(); + } catch (const std::exception& error) { + std::cerr << "placement_unit_tests failed: " << error.what() << '\n'; + return 1; + } + + std::cout << "placement_unit_tests passed\n"; + return 0; +} From abbb7d991e74e13356bb88dccc4f887c8a0d26a6 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 12:14:20 -0700 Subject: [PATCH 36/48] add training loop --- cpp/cmake/RunCoverage.cmake | 1 + cpp/tests/metrics_tests.cpp | 150 ++++++++++++++++++ cpp/training.cpp | 294 +++++++++++++++++++++++++++++++++++- 3 files changed, 440 insertions(+), 5 deletions(-) diff --git a/cpp/cmake/RunCoverage.cmake b/cpp/cmake/RunCoverage.cmake index 08eb531..93b23e5 100644 --- a/cpp/cmake/RunCoverage.cmake +++ b/cpp/cmake/RunCoverage.cmake @@ -35,6 +35,7 @@ set(covered_sources "${SOURCE_DIR}/generation.cpp" "${SOURCE_DIR}/losses.cpp" "${SOURCE_DIR}/metrics.cpp" + "${SOURCE_DIR}/training.cpp" ) execute_process( diff --git a/cpp/tests/metrics_tests.cpp b/cpp/tests/metrics_tests.cpp index f20514e..35457a6 100644 --- a/cpp/tests/metrics_tests.cpp +++ b/cpp/tests/metrics_tests.cpp @@ -1,6 +1,7 @@ #include "placement/generation.h" #include "placement/losses.h" #include "placement/metrics.h" +#include "placement/training.h" #include @@ -228,6 +229,151 @@ void lossesBackpropagateThroughCellPositions() { expect(positions.grad().abs().sum().item() > 0.0, "nonzero gradients"); } +void trainingWithNoEpochsReturnsInitialPlacement() { + const auto float_options = torch::TensorOptions().dtype(torch::kFloat32); + const auto long_options = torch::TensorOptions().dtype(torch::kInt64); + + const auto cell_features = torch::tensor( + { + {1.0F, 1.0F, 0.0F, 0.0F, 1.0F, 1.0F}, + {1.0F, 1.0F, 4.0F, 0.0F, 1.0F, 1.0F}, + }, + float_options); + const auto pin_features = torch::tensor( + { + {0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}, + {1.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}, + }, + float_options); + const auto edge_list = torch::tensor({{0LL, 1LL}}, long_options); + + placement::TrainingConfig config; + config.num_epochs = 0; + config.verbose = false; + + const placement::TrainingResult result = + placement::trainPlacement(cell_features, pin_features, edge_list, config); + expect( + torch::allclose(result.initial_cell_features, cell_features), + "zero-epoch initial features"); + expect( + torch::allclose(result.final_cell_features, cell_features), + "zero-epoch final features"); + expect(!result.stopped_early, "zero-epoch does not stop early"); + expect(result.best_epoch == -1, "zero-epoch best epoch"); +} + +void trainingReducesOverlapLoss() { + const auto float_options = torch::TensorOptions().dtype(torch::kFloat32); + const auto long_options = torch::TensorOptions().dtype(torch::kInt64); + + const auto cell_features = torch::tensor( + { + {4.0F, 1.0F, 0.0F, 0.0F, 2.0F, 2.0F}, + {4.0F, 1.0F, 1.0F, 0.0F, 2.0F, 2.0F}, + }, + float_options); + const auto pin_features = torch::zeros({0, 7}, float_options); + const auto edge_list = torch::zeros({0, 2}, long_options); + + placement::TrainingConfig config; + config.num_epochs = 40; + config.lr = 0.1; + config.lambda_wirelength = 0.0; + config.lambda_overlap = 1.0; + config.scheduler_name = "none"; + config.early_stop_enabled = false; + config.verbose = false; + + const double initial_overlap = + placement::calculateOverlapMetrics(cell_features).total_overlap_area; + const placement::TrainingResult result = + placement::trainPlacement(cell_features, pin_features, edge_list, config); + const double final_overlap = + placement::calculateOverlapMetrics(result.final_cell_features) + .total_overlap_area; + + expect(final_overlap < initial_overlap, "training reduces overlap area"); + expect( + torch::allclose(result.initial_cell_features, cell_features), + "training preserves initial features"); + expect(!result.stopped_early, "overlap-only training no early stop"); +} + +void trainingReducesWirelengthLoss() { + const auto float_options = torch::TensorOptions().dtype(torch::kFloat32); + const auto long_options = torch::TensorOptions().dtype(torch::kInt64); + + const auto cell_features = torch::tensor( + { + {1.0F, 1.0F, 0.0F, 0.0F, 1.0F, 1.0F}, + {1.0F, 1.0F, 10.0F, 0.0F, 1.0F, 1.0F}, + }, + float_options); + const auto pin_features = torch::tensor( + { + {0.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}, + {1.0F, 0.0F, 0.0F, 0.0F, 0.0F, 0.1F, 0.1F}, + }, + float_options); + const auto edge_list = torch::tensor({{0LL, 1LL}}, long_options); + + placement::TrainingConfig config; + config.num_epochs = 20; + config.lr = 0.1; + config.lambda_wirelength = 1.0; + config.lambda_overlap = 0.0; + config.scheduler_name = "none"; + config.early_stop_enabled = false; + config.verbose = false; + + const double initial_wl = + placement::wirelengthAttractionLoss(cell_features, pin_features, edge_list) + .item(); + const placement::TrainingResult result = + placement::trainPlacement(cell_features, pin_features, edge_list, config); + const double final_wl = placement::wirelengthAttractionLoss( + result.final_cell_features, + pin_features, + edge_list) + .item(); + + expect(final_wl < initial_wl, "training reduces wirelength"); +} + +void trainingReportsEarlyStopMetadata() { + const auto float_options = torch::TensorOptions().dtype(torch::kFloat32); + const auto long_options = torch::TensorOptions().dtype(torch::kInt64); + + const auto cell_features = torch::tensor( + { + {1.0F, 1.0F, 0.0F, 0.0F, 1.0F, 1.0F}, + {1.0F, 1.0F, 4.0F, 0.0F, 1.0F, 1.0F}, + }, + float_options); + const auto pin_features = torch::zeros({0, 7}, float_options); + const auto edge_list = torch::zeros({0, 2}, long_options); + + placement::TrainingConfig config; + config.num_epochs = 5; + config.lr = 0.1; + config.lambda_wirelength = 0.0; + config.lambda_overlap = 1.0; + config.scheduler_name = "none"; + config.early_stop_enabled = true; + config.early_stop_zero_overlap_patience = 1; + config.verbose = false; + + const placement::TrainingResult result = + placement::trainPlacement(cell_features, pin_features, edge_list, config); + + expect(result.stopped_early, "training reports early stop"); + expect( + result.stop_reason == "zero_overlap_plateau", + "training early stop reason"); + expect(result.best_epoch == 0, "training best epoch"); +} + } // namespace int main() { @@ -237,6 +383,10 @@ int main() { deterministicLossesMatchPythonReference(); lossEdgeCasesStayFinite(); lossesBackpropagateThroughCellPositions(); + trainingWithNoEpochsReturnsInitialPlacement(); + trainingReducesOverlapLoss(); + trainingReducesWirelengthLoss(); + trainingReportsEarlyStopMetadata(); } catch (const std::exception& error) { std::cerr << "placement_unit_tests failed: " << error.what() << '\n'; return 1; diff --git a/cpp/training.cpp b/cpp/training.cpp index 73aa20b..655b882 100644 --- a/cpp/training.cpp +++ b/cpp/training.cpp @@ -1,5 +1,132 @@ #include "placement/training.h" +#include "placement/losses.h" +#include "placement/metrics.h" + +#include +#include +#include +#include +#include +#include + +namespace { + +using namespace torch::indexing; + +int64_t featureIndex(placement::CellFeatureIdx idx) { + return static_cast(idx); +} + +torch::Tensor makeCellFeaturesWithPositions( + const torch::Tensor& cell_features, + const torch::Tensor& cell_positions) { + const auto prefix = cell_features.index( + {Slice(), Slice(0, featureIndex(placement::CellFeatureIdx::X))}); + const auto suffix = cell_features.index( + {Slice(), Slice(featureIndex(placement::CellFeatureIdx::Width), None)}); + return torch::cat({prefix, cell_positions, suffix}, 1); +} + +double optimizerLearningRate(torch::optim::Adam& optimizer) { + return static_cast( + optimizer.param_groups().front().options()) + .lr(); +} + +void setOptimizerLearningRate(torch::optim::Adam& optimizer, double lr) { + for (auto& group : optimizer.param_groups()) { + static_cast(group.options()).lr(lr); + } +} + +void clipGradientNorm(const torch::Tensor& tensor, double max_norm) { + if (!tensor.grad().defined()) { + return; + } + + const double grad_norm = tensor.grad().norm().item(); + if (std::isfinite(grad_norm) && grad_norm > max_norm) { + const double scale = max_norm / (grad_norm + 1e-12); + tensor.grad().mul_(scale); + } +} + +class LearningRateScheduler { +public: + LearningRateScheduler(const placement::TrainingConfig& config, double base_lr) + : config_(config), base_lr_(base_lr), current_lr_(base_lr) { + if (config_.scheduler_name != "none" && + config_.scheduler_name != "plateau" && + config_.scheduler_name != "cosine" && + config_.scheduler_name != "step" && + config_.scheduler_name != "exponential") { + throw std::invalid_argument( + "Unsupported scheduler: " + config_.scheduler_name); + } + } + + void step(torch::optim::Adam& optimizer, double metric) { + if (config_.scheduler_name == "none") { + return; + } + + ++epoch_; + if (config_.scheduler_name == "plateau") { + stepPlateau(metric); + } else if (config_.scheduler_name == "cosine") { + stepCosine(); + } else if (config_.scheduler_name == "step") { + stepStep(); + } else if (config_.scheduler_name == "exponential") { + current_lr_ *= config_.scheduler_gamma; + } + + setOptimizerLearningRate(optimizer, current_lr_); + } + +private: + void stepPlateau(double metric) { + if (metric < best_metric_) { + best_metric_ = metric; + bad_epochs_ = 0; + return; + } + + ++bad_epochs_; + if (bad_epochs_ > config_.scheduler_patience) { + current_lr_ *= config_.scheduler_factor; + bad_epochs_ = 0; + } + } + + void stepCosine() { + const int t_max = std::max(1, config_.num_epochs); + const double progress = + static_cast(std::min(epoch_, t_max)) / static_cast(t_max); + current_lr_ = + config_.scheduler_eta_min + + (base_lr_ - config_.scheduler_eta_min) * + (1.0 + std::cos(std::acos(-1.0) * progress)) / 2.0; + } + + void stepStep() { + const int step_size = std::max(1, config_.scheduler_step_size); + if (epoch_ % step_size == 0) { + current_lr_ *= config_.scheduler_gamma; + } + } + + const placement::TrainingConfig& config_; + double base_lr_ = 0.0; + double current_lr_ = 0.0; + double best_metric_ = std::numeric_limits::infinity(); + int bad_epochs_ = 0; + int epoch_ = 0; +}; + +} // namespace + namespace placement { TrainingResult trainPlacement( @@ -7,12 +134,169 @@ TrainingResult trainPlacement( const torch::Tensor& pin_features, const torch::Tensor& edge_list, const TrainingConfig& config) { - (void)pin_features; - (void)edge_list; - (void)config; TrainingResult result; - result.initial_cell_features = cell_features.clone(); - result.final_cell_features = cell_features.clone(); + auto working_cell_features = cell_features.clone(); + auto working_pin_features = pin_features.to(working_cell_features.device()); + auto working_edge_list = edge_list.to(working_cell_features.device()); + + result.initial_cell_features = working_cell_features.clone(); + if (config.num_epochs <= 0 || working_cell_features.size(0) == 0) { + result.final_cell_features = working_cell_features.clone(); + return result; + } + + auto cell_positions = + working_cell_features + .index({Slice(), + Slice( + featureIndex(CellFeatureIdx::X), + featureIndex(CellFeatureIdx::Y) + 1)}) + .clone() + .detach(); + cell_positions.set_requires_grad(true); + + torch::optim::Adam optimizer( + {cell_positions}, + torch::optim::AdamOptions(config.lr)); + LearningRateScheduler scheduler(config, config.lr); + + auto best_cell_positions = cell_positions.detach().clone(); + double best_overlap_score = std::numeric_limits::infinity(); + double best_zero_overlap_wl = std::numeric_limits::infinity(); + int epochs_without_improvement = 0; + int zero_overlap_epochs_without_improvement = 0; + bool zero_overlap_reached = false; + + for (int epoch = 0; epoch < config.num_epochs; ++epoch) { + optimizer.zero_grad(); + + auto current_cell_features = + makeCellFeaturesWithPositions(working_cell_features, cell_positions); + const auto wl_loss = wirelengthAttractionLoss( + current_cell_features, + working_pin_features, + working_edge_list); + const auto overlap_loss = overlapRepulsionLoss( + current_cell_features, + working_pin_features, + working_edge_list); + const auto total_loss = + config.lambda_wirelength * wl_loss + + config.lambda_overlap * overlap_loss; + + total_loss.backward(); + clipGradientNorm(cell_positions, 5.0); + optimizer.step(); + scheduler.step(optimizer, total_loss.item()); + + const bool should_log_epoch = + config.verbose && + ((config.log_interval > 0 && epoch % config.log_interval == 0) || + epoch == config.num_epochs - 1); + const bool should_compute_overlap_metrics = + config.track_overlap_metrics || + config.early_stop_enabled || + should_log_epoch; + + OverlapMetrics overlap_metrics; + torch::Tensor updated_cell_features; + if (should_compute_overlap_metrics) { + updated_cell_features = makeCellFeaturesWithPositions( + working_cell_features, + cell_positions.detach()); + overlap_metrics = calculateOverlapMetrics(updated_cell_features); + } + + if (config.early_stop_enabled) { + const double overlap_score = overlap_metrics.total_overlap_area; + const bool has_zero_overlap = + overlap_metrics.overlap_count == 0 || + overlap_score <= config.early_stop_overlap_threshold; + + if (has_zero_overlap) { + const double current_wl = wirelengthAttractionLoss( + updated_cell_features, + working_pin_features, + working_edge_list) + .item(); + if (!zero_overlap_reached || + current_wl < + best_zero_overlap_wl - config.early_stop_min_delta) { + zero_overlap_reached = true; + best_zero_overlap_wl = current_wl; + best_cell_positions = cell_positions.detach().clone(); + result.best_epoch = epoch; + zero_overlap_epochs_without_improvement = 0; + } else { + ++zero_overlap_epochs_without_improvement; + } + + if (zero_overlap_reached && + zero_overlap_epochs_without_improvement >= + config.early_stop_zero_overlap_patience) { + result.stopped_early = true; + result.stop_reason = "zero_overlap_plateau"; + } + } else { + if (zero_overlap_reached) { + ++zero_overlap_epochs_without_improvement; + if (zero_overlap_epochs_without_improvement >= + config.early_stop_zero_overlap_patience) { + result.stopped_early = true; + result.stop_reason = "zero_overlap_plateau"; + } + } else { + if (overlap_score < + best_overlap_score - config.early_stop_min_delta) { + best_overlap_score = overlap_score; + best_cell_positions = cell_positions.detach().clone(); + result.best_epoch = epoch; + epochs_without_improvement = 0; + } else { + ++epochs_without_improvement; + } + + if (epochs_without_improvement >= + config.early_stop_patience) { + result.stopped_early = true; + result.stop_reason = "overlap_plateau"; + } + } + } + } + + if (should_log_epoch) { + std::cout << "Epoch " << epoch << "/" << config.num_epochs << ":\n"; + std::cout << " Total Loss: " << total_loss.item() << "\n"; + std::cout << " Wirelength Loss: " << wl_loss.item() << "\n"; + std::cout << " Overlap Loss: " << overlap_loss.item() << "\n"; + std::cout << " Learning Rate: " << optimizerLearningRate(optimizer) + << "\n"; + if (should_compute_overlap_metrics) { + std::cout << " Overlap Count: " + << overlap_metrics.overlap_count << "\n"; + std::cout << " Total Overlap Area: " + << overlap_metrics.total_overlap_area << "\n"; + } + if (config.early_stop_enabled) { + std::cout << " Best Epoch: " << result.best_epoch << "\n"; + } + } + + if (result.stopped_early) { + if (config.verbose) { + std::cout << "Early stopping at epoch " << epoch + << " with reason=" << result.stop_reason + << " best_epoch=" << result.best_epoch << "\n"; + } + break; + } + } + + const auto final_positions = + config.early_stop_enabled ? best_cell_positions : cell_positions.detach(); + result.final_cell_features = + makeCellFeaturesWithPositions(working_cell_features, final_positions); return result; } From dcd41ffa6fe46062698b86ebafb9c9dce863c08e Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 12:52:49 -0700 Subject: [PATCH 37/48] added CLI options to the executable --- cpp/CMakeLists.txt | 12 +- cpp/benchmark.cpp | 92 +++++- cpp/cmake/RunCoverage.cmake | 1 + cpp/include/placement/benchmark.h | 6 + cpp/include/placement/types.h | 12 + cpp/main.cpp | 456 +++++++++++++++++++++++++++++- cpp/tests/metrics_tests.cpp | 145 ++++++++++ 7 files changed, 701 insertions(+), 23 deletions(-) diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index 50678a1..75ffdbe 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -106,10 +106,10 @@ target_link_libraries(placement_core PUBLIC "${TORCH_LIBRARIES}") target_compile_features(placement_core PUBLIC cxx_std_20) enable_placement_coverage(placement_core) -add_executable(placement_smoke main.cpp) -target_link_libraries(placement_smoke PRIVATE placement_core CLI11::CLI11) -target_compile_features(placement_smoke PRIVATE cxx_std_20) -enable_placement_coverage(placement_smoke) +add_executable(placement main.cpp) +target_link_libraries(placement PRIVATE placement_core CLI11::CLI11) +target_compile_features(placement PRIVATE cxx_std_20) +enable_placement_coverage(placement) if(BUILD_TESTING) add_executable(placement_unit_tests tests/metrics_tests.cpp) @@ -137,13 +137,13 @@ endif() if(MSVC) target_compile_options(placement_core PRIVATE /W4) - target_compile_options(placement_smoke PRIVATE /W4) + target_compile_options(placement PRIVATE /W4) if(TARGET placement_unit_tests) target_compile_options(placement_unit_tests PRIVATE /W4) endif() else() target_compile_options(placement_core PRIVATE -Wall -Wextra -Wpedantic) - target_compile_options(placement_smoke PRIVATE -Wall -Wextra -Wpedantic) + target_compile_options(placement PRIVATE -Wall -Wextra -Wpedantic) if(TARGET placement_unit_tests) target_compile_options(placement_unit_tests PRIVATE -Wall -Wextra -Wpedantic) endif() diff --git a/cpp/benchmark.cpp b/cpp/benchmark.cpp index 86a2d4f..adde84c 100644 --- a/cpp/benchmark.cpp +++ b/cpp/benchmark.cpp @@ -1,6 +1,11 @@ #include "placement/benchmark.h" -#include +#include "placement/generation.h" +#include "placement/metrics.h" +#include "placement/training.h" + +#include +#include namespace placement { @@ -23,9 +28,88 @@ const std::vector& activeBenchmarkCases() { BenchmarkResult runBenchmarkCase( const BenchmarkCase& test_case, const TrainingConfig& config) { - (void)test_case; - (void)config; - throw std::logic_error("runBenchmarkCase is implemented in Step 6"); + if (test_case.seed != 0) { + torch::manual_seed(test_case.seed); + } + + TrainingConfig benchmark_config = config; + benchmark_config.verbose = false; + const torch::Device device(benchmark_config.device); + + PlacementProblem problem = generatePlacementInput( + test_case.num_macros, + test_case.num_std_cells, + device, + false); + initializeCellPositions(problem.cell_features); + + const auto start_time = std::chrono::steady_clock::now(); + const TrainingResult training_result = trainPlacement( + problem.cell_features, + problem.pin_features, + problem.edge_list, + benchmark_config); + const auto elapsed = std::chrono::steady_clock::now() - start_time; + + const Metrics metrics = calculateNormalizedMetrics( + training_result.final_cell_features, + problem.pin_features, + problem.edge_list); + + BenchmarkResult result; + result.test_id = test_case.test_id; + result.num_macros = test_case.num_macros; + result.num_std_cells = test_case.num_std_cells; + result.total_cells = metrics.total_cells; + result.num_nets = metrics.num_nets; + result.seed = test_case.seed; + result.device = benchmark_config.device; + result.elapsed_seconds = std::chrono::duration(elapsed).count(); + result.num_cells_with_overlaps = metrics.num_cells_with_overlaps; + result.overlap_ratio = metrics.overlap_ratio; + result.normalized_wl = metrics.normalized_wl; + result.passed = result.num_cells_with_overlaps == 0; + return result; +} + +BenchmarkSummary runBenchmarkCases( + const std::vector& test_cases, + const TrainingConfig& config) { + BenchmarkSummary summary; + if (test_cases.empty()) { + return summary; + } + + summary.results.reserve(test_cases.size()); + double overlap_sum = 0.0; + double wirelength_sum = 0.0; + + const auto start_time = std::chrono::steady_clock::now(); + for (const BenchmarkCase& test_case : test_cases) { + BenchmarkResult result = runBenchmarkCase(test_case, config); + + overlap_sum += result.overlap_ratio; + wirelength_sum += result.normalized_wl; + if (result.passed) { + ++summary.passed_count; + } else { + ++summary.failed_count; + } + + summary.results.push_back(std::move(result)); + } + const auto elapsed = std::chrono::steady_clock::now() - start_time; + + const double case_count = static_cast(test_cases.size()); + summary.average_overlap = overlap_sum / case_count; + summary.average_wirelength = wirelength_sum / case_count; + summary.total_elapsed_seconds = std::chrono::duration(elapsed).count(); + + return summary; +} + +BenchmarkSummary runActiveBenchmarkCases(const TrainingConfig& config) { + return runBenchmarkCases(activeBenchmarkCases(), config); } } // namespace placement diff --git a/cpp/cmake/RunCoverage.cmake b/cpp/cmake/RunCoverage.cmake index 93b23e5..3b8052f 100644 --- a/cpp/cmake/RunCoverage.cmake +++ b/cpp/cmake/RunCoverage.cmake @@ -32,6 +32,7 @@ if(NOT profdata_result EQUAL 0) endif() set(covered_sources + "${SOURCE_DIR}/benchmark.cpp" "${SOURCE_DIR}/generation.cpp" "${SOURCE_DIR}/losses.cpp" "${SOURCE_DIR}/metrics.cpp" diff --git a/cpp/include/placement/benchmark.h b/cpp/include/placement/benchmark.h index d91acfc..77b7dda 100644 --- a/cpp/include/placement/benchmark.h +++ b/cpp/include/placement/benchmark.h @@ -12,4 +12,10 @@ BenchmarkResult runBenchmarkCase( const BenchmarkCase& test_case, const TrainingConfig& config = {}); +BenchmarkSummary runBenchmarkCases( + const std::vector& test_cases, + const TrainingConfig& config = {}); + +BenchmarkSummary runActiveBenchmarkCases(const TrainingConfig& config = {}); + } // namespace placement diff --git a/cpp/include/placement/types.h b/cpp/include/placement/types.h index 7f64368..8da19e0 100644 --- a/cpp/include/placement/types.h +++ b/cpp/include/placement/types.h @@ -34,6 +34,7 @@ struct PlacementProblem { }; struct TrainingConfig { + c10::DeviceType device = torch::kCPU; int num_epochs = 1000; double lr = 0.1; double lambda_wirelength = 3.0; @@ -94,10 +95,21 @@ struct BenchmarkResult { int64_t total_cells = 0; int64_t num_nets = 0; int seed = 0; + c10::DeviceType device = torch::kCPU; double elapsed_seconds = 0.0; int num_cells_with_overlaps = 0; double overlap_ratio = 0.0; double normalized_wl = 0.0; + bool passed = false; +}; + +struct BenchmarkSummary { + std::vector results; + double average_overlap = 0.0; + double average_wirelength = 0.0; + double total_elapsed_seconds = 0.0; + int passed_count = 0; + int failed_count = 0; }; } // namespace placement diff --git a/cpp/main.cpp b/cpp/main.cpp index 3da73c7..a669295 100644 --- a/cpp/main.cpp +++ b/cpp/main.cpp @@ -1,25 +1,455 @@ +#include "placement/benchmark.h" +#include "placement/generation.h" +#include "placement/metrics.h" +#include "placement/training.h" +#include "placement/types.h" + #include +#include +#include #include +#include +#include #include +#include +#include +#include +#include -int main(int argc, char** argv) { - CLI::App app{"Placement C++ LibTorch smoke test"}; - bool print_tensor = false; - app.add_flag("--print-tensor", print_tensor, "Print the generated tensor"); - CLI11_PARSE(app, argc, argv); +namespace { + +struct CliOptions { + bool run_benchmark = false; + std::string device = "auto"; + int test_case_id = 0; + int num_macros = 3; + int num_std_cells = 10; + int seed = 42; +}; + +std::string deviceTypeName(c10::DeviceType device) { + switch (device) { + case c10::DeviceType::CPU: + return "cpu"; + case c10::DeviceType::CUDA: + return "cuda"; + case c10::DeviceType::MPS: + return "mps"; + default: + return "unknown"; + } +} + +c10::DeviceType resolveDeviceType(const std::string& device) { + if (device == "auto") { + if (torch::cuda::is_available()) { + return torch::kCUDA; + } + if (torch::mps::is_available()) { + return torch::kMPS; + } + return torch::kCPU; + } + if (device == "cpu") { + return torch::kCPU; + } + if (device == "cuda") { + if (!torch::cuda::is_available()) { + throw std::invalid_argument("CUDA device requested but unavailable"); + } + return torch::kCUDA; + } + if (device == "mps") { + if (!torch::mps::is_available()) { + throw std::invalid_argument("MPS device requested but unavailable"); + } + return torch::kMPS; + } + throw std::invalid_argument("Unsupported device: " + device); +} + +void seedTorch(int seed) { + torch::manual_seed(static_cast(seed)); + if (torch::cuda::is_available()) { + torch::cuda::manual_seed_all(static_cast(seed)); + } + if (torch::mps::is_available()) { + torch::mps::manual_seed(static_cast(seed)); + } +} + +std::vector allKnownBenchmarkCases() { + std::vector cases( + placement::activeBenchmarkCases().begin(), + placement::activeBenchmarkCases().end()); + cases.push_back({11, 10, 10000, 1011}); + cases.push_back({12, 10, 100000, 1012}); + return cases; +} + +std::optional findBenchmarkCase(int test_case_id) { + for (const placement::BenchmarkCase& test_case : allKnownBenchmarkCases()) { + if (test_case.test_id == test_case_id) { + return test_case; + } + } + return std::nullopt; +} + +void printRule(char c = '=') { + std::cout << std::string(70, c) << "\n"; +} + +void printTrainingConfig(const placement::TrainingConfig& config) { + std::cout << "Using hyperparameters:\n"; + std::cout << " num_epochs: " << config.num_epochs << "\n"; + std::cout << " lr: " << config.lr << "\n"; + std::cout << " lambda_wirelength: " << config.lambda_wirelength << "\n"; + std::cout << " lambda_overlap: " << config.lambda_overlap << "\n"; + std::cout << " scheduler: " << config.scheduler_name << "\n"; + std::cout << " scheduler_patience: " << config.scheduler_patience << "\n"; + std::cout << " scheduler_factor: " << config.scheduler_factor << "\n"; + std::cout << " scheduler_eta_min: " << config.scheduler_eta_min << "\n"; + std::cout << " scheduler_step_size: " << config.scheduler_step_size << "\n"; + std::cout << " scheduler_gamma: " << config.scheduler_gamma << "\n"; + std::cout << " track_overlap_metrics: " + << (config.track_overlap_metrics ? "true" : "false") << "\n"; + std::cout << " early_stop_enabled: " + << (config.early_stop_enabled ? "true" : "false") << "\n"; + std::cout << " early_stop_patience: " << config.early_stop_patience << "\n"; + std::cout << " early_stop_min_delta: " << config.early_stop_min_delta << "\n"; + std::cout << " early_stop_overlap_threshold: " + << config.early_stop_overlap_threshold << "\n"; + std::cout << " early_stop_zero_overlap_patience: " + << config.early_stop_zero_overlap_patience << "\n"; +} + +void printBenchmarkResult(const placement::BenchmarkResult& result) { + const char* status = result.passed ? "PASS" : "FAIL"; + std::cout << "Completed test " << result.test_id << ":\n"; + std::cout << " Device: " << deviceTypeName(result.device) << "\n"; + std::cout << " Overlap Ratio: " << std::fixed << std::setprecision(4) + << result.overlap_ratio << " (" << result.num_cells_with_overlaps + << "/" << result.total_cells << " cells)\n"; + std::cout << " Normalized WL: " << std::fixed << std::setprecision(4) + << result.normalized_wl << "\n"; + std::cout << " Time: " << std::fixed << std::setprecision(2) + << result.elapsed_seconds << "s\n"; + std::cout << " Status: " << status << "\n\n"; +} + +int runBenchmark(const placement::TrainingConfig& config) { + printRule(); + std::cout << "PLACEMENT CHALLENGE TEST SUITE\n"; + printRule(); + std::cout << "\nRunning " << placement::activeBenchmarkCases().size() + << " active test cases serially.\n"; + printTrainingConfig(config); + std::cout << "\n"; + + int case_index = 1; + for (const placement::BenchmarkCase& test_case : + placement::activeBenchmarkCases()) { + const char* size_category = + test_case.num_std_cells <= 30 + ? "Small" + : test_case.num_std_cells <= 100 ? "Medium" : "Large"; + std::cout << "Test " << case_index++ << "/" + << placement::activeBenchmarkCases().size() << ": " + << size_category << " (" << test_case.num_macros + << " macros, " << test_case.num_std_cells << " std cells)\n"; + std::cout << " Seed: " << test_case.seed << "\n"; + } + std::cout << "\n"; + + const placement::BenchmarkSummary summary = + placement::runActiveBenchmarkCases(config); + for (const placement::BenchmarkResult& result : summary.results) { + printBenchmarkResult(result); + } - torch::manual_seed(66); - const torch::Tensor values = torch::rand({2, 3}, torch::kFloat32); - const torch::Tensor doubled = values * 2.0; + printRule(); + std::cout << "FINAL RESULTS\n"; + printRule(); + std::cout << "Average Overlap: " << std::fixed << std::setprecision(4) + << summary.average_overlap << "\n"; + std::cout << "Average Wirelength: " << std::fixed << std::setprecision(4) + << summary.average_wirelength << "\n"; + std::cout << "Total Runtime: " << std::fixed << std::setprecision(2) + << summary.total_elapsed_seconds << "s\n"; + std::cout << "Passed: " << summary.passed_count << "\n"; + std::cout << "Failed: " << summary.failed_count << "\n"; + return 0; +} + +int runSinglePlacement( + const CliOptions& options, + const placement::TrainingConfig& config) { + placement::BenchmarkCase selected_case{ + 0, + options.num_macros, + options.num_std_cells, + options.seed, + }; + if (options.test_case_id != 0) { + const std::optional test_case = + findBenchmarkCase(options.test_case_id); + if (!test_case.has_value()) { + throw std::invalid_argument( + "Unknown benchmark test case id: " + + std::to_string(options.test_case_id)); + } + selected_case = *test_case; + } + + printRule(); + std::cout << "VLSI CELL PLACEMENT OPTIMIZATION\n"; + printRule(); + std::cout << "\nGenerating placement problem:\n"; + if (selected_case.test_id != 0) { + std::cout << " - benchmark test case: " << selected_case.test_id << "\n"; + } + std::cout << " - " << selected_case.num_macros << " macros\n"; + std::cout << " - " << selected_case.num_std_cells << " standard cells\n"; + std::cout << " - seed: " << selected_case.seed << "\n"; + std::cout << " - device: " << deviceTypeName(config.device) << "\n"; + + seedTorch(selected_case.seed); + const torch::Device device(config.device); + placement::PlacementProblem problem = placement::generatePlacementInput( + selected_case.num_macros, + selected_case.num_std_cells, + device); + placement::initializeCellPositions(problem.cell_features); + + std::cout << "\n"; + printRule(); + std::cout << "INITIAL STATE\n"; + printRule(); + const placement::OverlapMetrics initial_metrics = + placement::calculateOverlapMetrics(problem.cell_features); + std::cout << "Overlap count: " << initial_metrics.overlap_count << "\n"; + std::cout << "Total overlap area: " << std::fixed << std::setprecision(2) + << initial_metrics.total_overlap_area << "\n"; + std::cout << "Max overlap area: " << std::fixed << std::setprecision(2) + << initial_metrics.max_overlap_area << "\n"; + std::cout << "Overlap percentage: " << std::fixed << std::setprecision(2) + << initial_metrics.overlap_percentage << "%\n"; + + std::cout << "\n"; + printRule(); + std::cout << "RUNNING OPTIMIZATION\n"; + printRule(); + placement::TrainingResult training_result = placement::trainPlacement( + problem.cell_features, + problem.pin_features, + problem.edge_list, + config); - std::cout << "LibTorch smoke test\n"; - std::cout << "Tensor sizes: " << values.sizes() << "\n"; - std::cout << "Mean doubled value: " << doubled.mean().item() << "\n"; + std::cout << "\n"; + printRule(); + std::cout << "FINAL RESULTS\n"; + printRule(); + const placement::OverlapMetrics final_overlap_metrics = + placement::calculateOverlapMetrics(training_result.final_cell_features); + std::cout << "Overlap count (pairs): " + << final_overlap_metrics.overlap_count << "\n"; + std::cout << "Total overlap area: " << std::fixed << std::setprecision(2) + << final_overlap_metrics.total_overlap_area << "\n"; + std::cout << "Max overlap area: " << std::fixed << std::setprecision(2) + << final_overlap_metrics.max_overlap_area << "\n"; - if (print_tensor) { - std::cout << doubled << "\n"; + std::cout << "\n"; + printRule('-'); + std::cout << "TEST SUITE METRICS\n"; + printRule('-'); + const placement::Metrics normalized_metrics = + placement::calculateNormalizedMetrics( + training_result.final_cell_features, + problem.pin_features, + problem.edge_list); + std::cout << "Overlap Ratio: " << std::fixed << std::setprecision(4) + << normalized_metrics.overlap_ratio << " (" + << normalized_metrics.num_cells_with_overlaps << "/" + << normalized_metrics.total_cells << " cells)\n"; + std::cout << "Normalized Wirelength: " << std::fixed << std::setprecision(4) + << normalized_metrics.normalized_wl << "\n"; + if (training_result.stopped_early) { + std::cout << "Stopped Early: " << training_result.stop_reason + << " at best epoch " << training_result.best_epoch << "\n"; } + std::cout << "\n"; + printRule(); + std::cout << "SUCCESS CRITERIA\n"; + printRule(); + if (normalized_metrics.num_cells_with_overlaps == 0) { + std::cout << "PASS: No overlapping cells.\n"; + return 0; + } + + std::cout << "FAIL: Overlaps remain in " + << normalized_metrics.num_cells_with_overlaps << " cells.\n"; return 0; } + +void configureCli( + CLI::App& app, + CliOptions& options, + placement::TrainingConfig& config) { + app.add_flag( + "--benchmark", + options.run_benchmark, + "Run the active benchmark suite instead of a single placement."); + app.add_option( + "--device", + options.device, + "Device to run on: auto, cpu, cuda, or mps.") + ->check(CLI::IsMember({"auto", "cpu", "cuda", "mps"})); + app.add_option( + "--test-case-id", + options.test_case_id, + "Optional benchmark test case id for a single placement run."); + app.add_option( + "--num-macros", + options.num_macros, + "Number of macro cells for a single placement run."); + app.add_option( + "--num-std-cells", + options.num_std_cells, + "Number of standard cells for a single placement run."); + app.add_option("--seed", options.seed, "Random seed for a single placement run."); + + app.add_option( + "--num-epochs", + config.num_epochs, + "Number of optimization epochs."); + app.add_option("--lr", config.lr, "Learning rate for Adam."); + app.add_option( + "--lambda-wirelength", + config.lambda_wirelength, + "Weight applied to the wirelength loss."); + app.add_option( + "--lambda-overlap", + config.lambda_overlap, + "Weight applied to the overlap loss."); + app.add_option("--scheduler", config.scheduler_name, "Learning-rate scheduler.") + ->check(CLI::IsMember( + {"plateau", "cosine", "step", "exponential", "none"})); + app.add_option( + "--scheduler-patience", + config.scheduler_patience, + "Patience for ReduceLROnPlateau."); + app.add_option( + "--scheduler-factor", + config.scheduler_factor, + "Decay factor for ReduceLROnPlateau."); + app.add_option( + "--scheduler-eta-min", + config.scheduler_eta_min, + "Minimum learning rate for cosine annealing."); + app.add_option( + "--scheduler-step-size", + config.scheduler_step_size, + "Step size in epochs for StepLR."); + app.add_option( + "--scheduler-gamma", + config.scheduler_gamma, + "Gamma decay for step and exponential schedulers."); + app.add_flag( + "--track-overlap-metrics", + config.track_overlap_metrics, + "Compute overlap metrics every epoch."); + app.add_flag( + "--no-early-stop", + [&config](int64_t count) { + if (count > 0) { + config.early_stop_enabled = false; + } + }, + "Disable overlap-first early stopping."); + app.add_option( + "--early-stop-patience", + config.early_stop_patience, + "Patience before stopping when overlap stops improving."); + app.add_option( + "--early-stop-min-delta", + config.early_stop_min_delta, + "Minimum improvement required to reset early-stop patience."); + app.add_option( + "--early-stop-overlap-threshold", + config.early_stop_overlap_threshold, + "Overlap threshold treated as effectively zero."); + app.add_option( + "--early-stop-zero-overlap-patience", + config.early_stop_zero_overlap_patience, + "Extra patience after zero overlap is reached."); + app.add_flag("--quiet", [&config](int64_t count) { + if (count > 0) { + config.verbose = false; + } + }, "Suppress per-epoch output for a single placement run."); + app.add_option( + "--log-interval", + config.log_interval, + "Epoch interval for verbose training logs."); +} + +void validateOptions( + const CliOptions& options, + const placement::TrainingConfig& config) { + if (options.num_macros < 0 || options.num_std_cells < 0) { + throw std::invalid_argument("Cell counts must be nonnegative"); + } + if (options.num_macros + options.num_std_cells < 0) { + throw std::invalid_argument("Cell counts overflowed"); + } + if (config.num_epochs < 0) { + throw std::invalid_argument("Number of epochs must be nonnegative"); + } + if (config.lr <= 0.0) { + throw std::invalid_argument("Learning rate must be positive"); + } + if (config.scheduler_patience < 0) { + throw std::invalid_argument("Scheduler patience must be nonnegative"); + } + if (config.scheduler_factor <= 0.0) { + throw std::invalid_argument("Scheduler factor must be positive"); + } + if (config.scheduler_step_size <= 0) { + throw std::invalid_argument("Scheduler step size must be positive"); + } + if (config.early_stop_patience <= 0 || + config.early_stop_zero_overlap_patience <= 0) { + throw std::invalid_argument("Early-stop patience values must be positive"); + } +} + +} // namespace + +int main(int argc, char** argv) { + CliOptions options; + placement::TrainingConfig config; + config.log_interval = 200; + + CLI::App app{"Placement C++ runner"}; + configureCli(app, options, config); + CLI11_PARSE(app, argc, argv); + + try { + validateOptions(options, config); + config.device = resolveDeviceType(options.device); + + if (options.run_benchmark) { + config.verbose = false; + return runBenchmark(config); + } + return runSinglePlacement(options, config); + } catch (const c10::Error& error) { + std::cerr << "LibTorch error: " << error.what_without_backtrace() << "\n"; + } catch (const std::exception& error) { + std::cerr << "Error: " << error.what() << "\n"; + } + return 1; +} diff --git a/cpp/tests/metrics_tests.cpp b/cpp/tests/metrics_tests.cpp index 35457a6..da8ebfc 100644 --- a/cpp/tests/metrics_tests.cpp +++ b/cpp/tests/metrics_tests.cpp @@ -1,3 +1,4 @@ +#include "placement/benchmark.h" #include "placement/generation.h" #include "placement/losses.h" #include "placement/metrics.h" @@ -9,6 +10,7 @@ #include #include #include +#include namespace { @@ -30,6 +32,16 @@ void expectNear( } } +placement::TrainingConfig fastBenchmarkConfig() { + placement::TrainingConfig config; + config.device = torch::kCPU; + config.num_epochs = 0; + config.scheduler_name = "none"; + config.early_stop_enabled = false; + config.verbose = false; + return config; +} + void deterministicMetricsMatchPythonReference() { const auto float_options = torch::TensorOptions().dtype(torch::kFloat32); const auto long_options = torch::TensorOptions().dtype(torch::kInt64); @@ -374,6 +386,135 @@ void trainingReportsEarlyStopMetadata() { expect(result.best_epoch == 0, "training best epoch"); } +void activeBenchmarkCasesMatchPythonReference() { + const std::vector expected = { + {1, 2, 20, 1001}, + {2, 3, 25, 1002}, + {3, 2, 30, 1003}, + {4, 3, 50, 1004}, + {5, 4, 75, 1005}, + {6, 5, 100, 1006}, + {7, 5, 150, 1007}, + {8, 7, 150, 1008}, + {9, 8, 200, 1009}, + {10, 10, 2000, 1010}, + }; + + const std::vector& actual = + placement::activeBenchmarkCases(); + expect(actual.size() == expected.size(), "active benchmark case count"); + + for (std::size_t i = 0; i < expected.size(); ++i) { + expect(actual[i].test_id == expected[i].test_id, "benchmark test id"); + expect(actual[i].num_macros == expected[i].num_macros, "benchmark macros"); + expect( + actual[i].num_std_cells == expected[i].num_std_cells, + "benchmark standard cells"); + expect(actual[i].seed == expected[i].seed, "benchmark seed"); + } +} + +void benchmarkCasePopulatesMetricsAndUsesSeed() { + placement::TrainingConfig config = fastBenchmarkConfig(); + + const placement::BenchmarkCase test_case{42, 1, 4, 4242}; + const placement::BenchmarkResult first = + placement::runBenchmarkCase(test_case, config); + const placement::BenchmarkResult second = + placement::runBenchmarkCase(test_case, config); + + expect(first.test_id == test_case.test_id, "benchmark result test id"); + expect(first.num_macros == test_case.num_macros, "benchmark result macros"); + expect( + first.num_std_cells == test_case.num_std_cells, + "benchmark result standard cells"); + expect(first.seed == test_case.seed, "benchmark result seed"); + expect(first.device == config.device, "benchmark result device"); + expect(first.total_cells == 5, "benchmark result total cells"); + expect(first.num_nets >= 0, "benchmark result net count"); + expect(first.elapsed_seconds >= 0.0, "benchmark result elapsed time"); + expect(first.num_cells_with_overlaps >= 0, "benchmark overlap cell lower bound"); + expect( + first.num_cells_with_overlaps <= first.total_cells, + "benchmark overlap cell upper bound"); + expect( + first.overlap_ratio >= 0.0 && first.overlap_ratio <= 1.0, + "benchmark overlap ratio range"); + expect(std::isfinite(first.normalized_wl), "benchmark finite wirelength"); + expect(first.normalized_wl >= 0.0, "benchmark nonnegative wirelength"); + expect( + first.passed == (first.num_cells_with_overlaps == 0), + "benchmark pass flag"); + + expect(first.num_nets == second.num_nets, "benchmark seeded net count"); + expectNear( + first.overlap_ratio, + second.overlap_ratio, + 1e-12, + "benchmark seeded overlap ratio"); + expectNear( + first.normalized_wl, + second.normalized_wl, + 1e-12, + "benchmark seeded normalized wirelength"); +} + +void benchmarkSummaryAggregatesOrderedResults() { + placement::TrainingConfig config = fastBenchmarkConfig(); + + const std::vector cases = { + {101, 0, 2, 1101}, + {102, 0, 3, 1102}, + }; + + const placement::BenchmarkSummary summary = + placement::runBenchmarkCases(cases, config); + + expect(summary.results.size() == cases.size(), "benchmark summary result count"); + expect(summary.results[0].test_id == 101, "benchmark summary preserves first id"); + expect(summary.results[1].test_id == 102, "benchmark summary preserves second id"); + + const double expected_average_overlap = + (summary.results[0].overlap_ratio + summary.results[1].overlap_ratio) / + 2.0; + const double expected_average_wirelength = + (summary.results[0].normalized_wl + summary.results[1].normalized_wl) / + 2.0; + expectNear( + summary.average_overlap, + expected_average_overlap, + 1e-12, + "benchmark average overlap"); + expectNear( + summary.average_wirelength, + expected_average_wirelength, + 1e-12, + "benchmark average wirelength"); + + const int expected_passed = + (summary.results[0].passed ? 1 : 0) + (summary.results[1].passed ? 1 : 0); + expect(summary.passed_count == expected_passed, "benchmark passed count"); + expect( + summary.failed_count == + static_cast(summary.results.size()) - expected_passed, + "benchmark failed count"); + expect( + std::isfinite(summary.total_elapsed_seconds) && + summary.total_elapsed_seconds >= 0.0, + "benchmark finite total elapsed time"); +} + +void emptyBenchmarkSummaryIsZeroed() { + const placement::BenchmarkSummary summary = placement::runBenchmarkCases({}); + + expect(summary.results.empty(), "empty benchmark result list"); + expectNear(summary.average_overlap, 0.0, 1e-12, "empty average overlap"); + expectNear(summary.average_wirelength, 0.0, 1e-12, "empty average wirelength"); + expectNear(summary.total_elapsed_seconds, 0.0, 1e-12, "empty elapsed time"); + expect(summary.passed_count == 0, "empty passed count"); + expect(summary.failed_count == 0, "empty failed count"); +} + } // namespace int main() { @@ -387,6 +528,10 @@ int main() { trainingReducesOverlapLoss(); trainingReducesWirelengthLoss(); trainingReportsEarlyStopMetadata(); + activeBenchmarkCasesMatchPythonReference(); + benchmarkCasePopulatesMetricsAndUsesSeed(); + benchmarkSummaryAggregatesOrderedResults(); + emptyBenchmarkSummaryIsZeroed(); } catch (const std::exception& error) { std::cerr << "placement_unit_tests failed: " << error.what() << '\n'; return 1; From 0d5c54ca6e3f6e225b67e63ffe786243d8851f12 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 13:12:10 -0700 Subject: [PATCH 38/48] Add C++ placement visualization output --- cpp/CMakeLists.txt | 7 +- cpp/include/placement/visualization.h | 14 ++ cpp/tests/metrics_tests.cpp | 3 + cpp/tests/visualization_tests.cpp | 75 ++++++ cpp/visualization.cpp | 348 ++++++++++++++++++++++++++ 5 files changed, 446 insertions(+), 1 deletion(-) create mode 100644 cpp/include/placement/visualization.h create mode 100644 cpp/tests/visualization_tests.cpp create mode 100644 cpp/visualization.cpp diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index 75ffdbe..9c999a6 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -100,6 +100,7 @@ add_library( losses.cpp metrics.cpp training.cpp + visualization.cpp ) target_include_directories(placement_core PUBLIC "${CMAKE_CURRENT_LIST_DIR}/include") target_link_libraries(placement_core PUBLIC "${TORCH_LIBRARIES}") @@ -112,7 +113,11 @@ target_compile_features(placement PRIVATE cxx_std_20) enable_placement_coverage(placement) if(BUILD_TESTING) - add_executable(placement_unit_tests tests/metrics_tests.cpp) + add_executable( + placement_unit_tests + tests/metrics_tests.cpp + tests/visualization_tests.cpp + ) target_link_libraries(placement_unit_tests PRIVATE placement_core) target_compile_features(placement_unit_tests PRIVATE cxx_std_20) enable_placement_coverage(placement_unit_tests) diff --git a/cpp/include/placement/visualization.h b/cpp/include/placement/visualization.h new file mode 100644 index 0000000..c30c4da --- /dev/null +++ b/cpp/include/placement/visualization.h @@ -0,0 +1,14 @@ +#pragma once + +#include + +#include + +namespace placement { + +void plotPlacement( + const torch::Tensor& initial_cell_features, + const torch::Tensor& final_cell_features, + const std::filesystem::path& output_path); + +} // namespace placement diff --git a/cpp/tests/metrics_tests.cpp b/cpp/tests/metrics_tests.cpp index da8ebfc..a10f54e 100644 --- a/cpp/tests/metrics_tests.cpp +++ b/cpp/tests/metrics_tests.cpp @@ -12,6 +12,8 @@ #include #include +void visualizationWritesSvgWithExpectedContent(); + namespace { void expect(bool condition, const std::string& message) { @@ -532,6 +534,7 @@ int main() { benchmarkCasePopulatesMetricsAndUsesSeed(); benchmarkSummaryAggregatesOrderedResults(); emptyBenchmarkSummaryIsZeroed(); + visualizationWritesSvgWithExpectedContent(); } catch (const std::exception& error) { std::cerr << "placement_unit_tests failed: " << error.what() << '\n'; return 1; diff --git a/cpp/tests/visualization_tests.cpp b/cpp/tests/visualization_tests.cpp new file mode 100644 index 0000000..1e779cd --- /dev/null +++ b/cpp/tests/visualization_tests.cpp @@ -0,0 +1,75 @@ +#include "placement/visualization.h" + +#include + +#include +#include +#include +#include +#include + +namespace { + +void expect(bool condition, const std::string& message) { + if (!condition) { + throw std::runtime_error(message); + } +} + +std::string readFile(const std::filesystem::path& path) { + std::ifstream input(path); + if (!input) { + throw std::runtime_error("unable to read visualization output"); + } + + std::ostringstream buffer; + buffer << input.rdbuf(); + return buffer.str(); +} + +} // namespace + +void visualizationWritesSvgWithExpectedContent() { + const auto float_options = torch::TensorOptions().dtype(torch::kFloat32); + + const auto initial_cell_features = torch::tensor( + { + {4.0F, 1.0F, 0.0F, 0.0F, 2.0F, 2.0F}, + {4.0F, 1.0F, 1.0F, 0.0F, 2.0F, 2.0F}, + }, + float_options); + const auto final_cell_features = torch::tensor( + { + {4.0F, 1.0F, 0.0F, 0.0F, 2.0F, 2.0F}, + {4.0F, 1.0F, 5.0F, 0.0F, 2.0F, 2.0F}, + }, + float_options); + + const std::filesystem::path output_path = + std::filesystem::temp_directory_path() / "placement_cpp_visualization_tests" / + "nested" / "tiny_placement.svg"; + std::filesystem::remove(output_path); + + placement::plotPlacement(initial_cell_features, final_cell_features, output_path); + + expect(std::filesystem::exists(output_path), "visualization output exists"); + expect(std::filesystem::file_size(output_path) > 0, "visualization output is nonempty"); + + const std::string content = readFile(output_path); + expect( + content.find("Initial Placement") != std::string::npos, + "visualization contains initial label"); + expect( + content.find("Final Placement") != std::string::npos, + "visualization contains final label"); + expect(content.find(" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace { + +using namespace torch::indexing; + +constexpr double kSvgWidth = 1200.0; +constexpr double kSvgHeight = 600.0; +constexpr double kPanelWidth = 560.0; +constexpr double kPlotTop = 95.0; +constexpr double kPlotWidth = 500.0; +constexpr double kPlotHeight = 455.0; +constexpr double kWorldMargin = 10.0; + +int64_t featureIndex(placement::CellFeatureIdx idx) { + return static_cast(idx); +} + +bool isUsableCoordinate(double value) { + constexpr double kMaxCoordinate = 1.0e12; + return std::isfinite(value) && std::abs(value) <= kMaxCoordinate; +} + +std::string formatDouble(double value, int precision = 2) { + std::ostringstream stream; + stream << std::fixed << std::setprecision(precision) << value; + return stream.str(); +} + +struct CellRect { + double center_x = 0.0; + double center_y = 0.0; + double width = 0.0; + double height = 0.0; + bool has_finite_center = false; + bool drawable = false; +}; + +struct Bounds { + double min_x = std::numeric_limits::infinity(); + double max_x = -std::numeric_limits::infinity(); + double min_y = std::numeric_limits::infinity(); + double max_y = -std::numeric_limits::infinity(); + + void include(double x, double y) { + if (!isUsableCoordinate(x) || !isUsableCoordinate(y)) { + return; + } + + min_x = std::min(min_x, x); + max_x = std::max(max_x, x); + min_y = std::min(min_y, y); + max_y = std::max(max_y, y); + } + + bool valid() const { + return min_x <= max_x && min_y <= max_y && std::isfinite(min_x) && + std::isfinite(max_x) && std::isfinite(min_y) && std::isfinite(max_y); + } +}; + +struct PanelData { + torch::Tensor cells; + std::vector rects; + Bounds bounds; + placement::OverlapMetrics metrics; +}; + +struct FinalBounds { + double min_x = -10.0; + double max_x = 10.0; + double min_y = -10.0; + double max_y = 10.0; +}; + +struct Transform { + FinalBounds bounds; + double x = 0.0; + double y = 0.0; + double width = 0.0; + double height = 0.0; + double scale = 1.0; + double x_padding = 0.0; + double y_padding = 0.0; + + double svgX(double world_x) const { + return x + x_padding + (world_x - bounds.min_x) * scale; + } + + double svgY(double world_y) const { + return y + y_padding + (bounds.max_y - world_y) * scale; + } +}; + +torch::Tensor prepareCellFeatures(const torch::Tensor& cell_features) { + if (!cell_features.defined()) { + throw std::invalid_argument("cell feature tensor must be defined"); + } + if (cell_features.dim() != 2) { + throw std::invalid_argument("cell feature tensor must be two-dimensional"); + } + if (cell_features.size(0) > 0 && + cell_features.size(1) <= featureIndex(placement::CellFeatureIdx::Height)) { + throw std::invalid_argument( + "cell feature tensor must contain area, pins, x, y, width, and height"); + } + + return cell_features.detach() + .to(torch::TensorOptions().device(torch::kCPU).dtype(torch::kFloat64)) + .contiguous(); +} + +CellRect readRect(const torch::Tensor& cells, int64_t row) { + CellRect rect; + rect.center_x = + cells.index({row, featureIndex(placement::CellFeatureIdx::X)}).item(); + rect.center_y = + cells.index({row, featureIndex(placement::CellFeatureIdx::Y)}).item(); + rect.width = + cells.index({row, featureIndex(placement::CellFeatureIdx::Width)}) + .item(); + rect.height = + cells.index({row, featureIndex(placement::CellFeatureIdx::Height)}) + .item(); + + rect.has_finite_center = + isUsableCoordinate(rect.center_x) && isUsableCoordinate(rect.center_y); + rect.drawable = rect.has_finite_center && isUsableCoordinate(rect.width) && + isUsableCoordinate(rect.height) && rect.width > 0.0 && + rect.height > 0.0; + return rect; +} + +PanelData buildPanelData(const torch::Tensor& cell_features) { + PanelData panel; + panel.cells = prepareCellFeatures(cell_features); + panel.metrics = placement::calculateOverlapMetrics(panel.cells); + + const int64_t num_cells = panel.cells.size(0); + panel.rects.reserve(static_cast(num_cells)); + for (int64_t index = 0; index < num_cells; ++index) { + CellRect rect = readRect(panel.cells, index); + if (rect.drawable) { + panel.bounds.include(rect.center_x - rect.width / 2.0, rect.center_y); + panel.bounds.include(rect.center_x + rect.width / 2.0, rect.center_y); + panel.bounds.include(rect.center_x, rect.center_y - rect.height / 2.0); + panel.bounds.include(rect.center_x, rect.center_y + rect.height / 2.0); + } else if (rect.has_finite_center) { + panel.bounds.include(rect.center_x, rect.center_y); + } + panel.rects.push_back(rect); + } + + return panel; +} + +FinalBounds finalizeBounds(const Bounds& bounds) { + if (!bounds.valid()) { + return {}; + } + + FinalBounds final_bounds{ + bounds.min_x - kWorldMargin, + bounds.max_x + kWorldMargin, + bounds.min_y - kWorldMargin, + bounds.max_y + kWorldMargin, + }; + + if (final_bounds.min_x >= final_bounds.max_x) { + final_bounds.min_x -= 1.0; + final_bounds.max_x += 1.0; + } + if (final_bounds.min_y >= final_bounds.max_y) { + final_bounds.min_y -= 1.0; + final_bounds.max_y += 1.0; + } + + return final_bounds; +} + +Transform makeTransform( + const FinalBounds& bounds, + double plot_x, + double plot_y, + double plot_width, + double plot_height) { + const double world_width = std::max(bounds.max_x - bounds.min_x, 1.0); + const double world_height = std::max(bounds.max_y - bounds.min_y, 1.0); + const double scale = std::min(plot_width / world_width, plot_height / world_height); + const double used_width = world_width * scale; + const double used_height = world_height * scale; + + return { + bounds, + plot_x, + plot_y, + plot_width, + plot_height, + scale, + (plot_width - used_width) / 2.0, + (plot_height - used_height) / 2.0, + }; +} + +void writeText( + std::ostream& output, + double x, + double y, + const std::string& text, + int font_size, + const std::string& anchor = "middle", + const std::string& weight = "normal") { + output << "" << text << "\n"; +} + +void writeGrid(std::ostream& output, const Transform& transform) { + constexpr int kGridLines = 5; + output << "\n"; + for (int index = 0; index <= kGridLines; ++index) { + const double ratio = static_cast(index) / kGridLines; + const double world_x = + transform.bounds.min_x + + (transform.bounds.max_x - transform.bounds.min_x) * ratio; + const double x = transform.svgX(world_x); + output << "\n"; + + const double world_y = + transform.bounds.min_y + + (transform.bounds.max_y - transform.bounds.min_y) * ratio; + const double y = transform.svgY(world_y); + output << "\n"; + } + output << "\n"; +} + +void writeCellRects( + std::ostream& output, + const std::vector& rects, + const Transform& transform) { + output << "\n"; + for (const CellRect& rect : rects) { + if (!rect.drawable) { + continue; + } + + const double left = rect.center_x - rect.width / 2.0; + const double top = rect.center_y + rect.height / 2.0; + output << "\n"; + } + output << "\n"; +} + +void writePanel( + std::ostream& output, + const PanelData& panel, + const std::string& title, + double panel_x) { + const double center_x = panel_x + kPanelWidth / 2.0; + writeText(output, center_x, 34.0, title, 18, "middle", "bold"); + writeText( + output, + center_x, + 58.0, + "Overlaps: " + std::to_string(panel.metrics.overlap_count) + + ", Total Overlap Area: " + + formatDouble(panel.metrics.total_overlap_area), + 14); + + const Transform transform = makeTransform( + finalizeBounds(panel.bounds), + panel_x + 30.0, + kPlotTop, + kPlotWidth, + kPlotHeight); + + output << "\n"; + writeGrid(output, transform); + writeCellRects(output, panel.rects, transform); +} + +} // namespace + +namespace placement { + +void plotPlacement( + const torch::Tensor& initial_cell_features, + const torch::Tensor& final_cell_features, + const std::filesystem::path& output_path) { + const PanelData initial_panel = buildPanelData(initial_cell_features); + const PanelData final_panel = buildPanelData(final_cell_features); + + const std::filesystem::path parent = output_path.parent_path(); + if (!parent.empty()) { + std::filesystem::create_directories(parent); + } + + std::ofstream output(output_path); + if (!output) { + throw std::runtime_error( + "unable to open placement visualization output path: " + + output_path.string()); + } + + output << "\n"; + output << "\n"; + output << "Placement Visualization\n"; + output << "\n"; + writePanel(output, initial_panel, "Initial Placement", 20.0); + writePanel(output, final_panel, "Final Placement", 620.0); + output << "\n"; +} + +} // namespace placement From 21bb310ba862518705316ab7ccadad92d040edbb Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 13:12:11 -0700 Subject: [PATCH 39/48] Write notebook-friendly placement artifacts --- cpp/main.cpp | 533 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 527 insertions(+), 6 deletions(-) diff --git a/cpp/main.cpp b/cpp/main.cpp index a669295..3996e1b 100644 --- a/cpp/main.cpp +++ b/cpp/main.cpp @@ -9,12 +9,18 @@ #include #include +#include #include +#include +#include #include #include #include +#include #include #include +#include +#include #include namespace { @@ -26,6 +32,8 @@ struct CliOptions { int num_macros = 3; int num_std_cells = 10; int seed = 42; + bool write_output_files = false; + std::string output_dir = "."; }; std::string deviceTypeName(c10::DeviceType device) { @@ -97,6 +105,493 @@ std::optional findBenchmarkCase(int test_case_id) { return std::nullopt; } +std::string formatDouble(double value) { + std::ostringstream stream; + stream << std::setprecision(17) << value; + return stream.str(); +} + +std::string boolText(bool value) { + return value ? "true" : "false"; +} + +std::string csvEscape(std::string_view value) { + if (value.find_first_of("\",\n\r") == std::string_view::npos) { + return std::string(value); + } + + std::string escaped; + escaped.reserve(value.size() + 2); + escaped.push_back('"'); + for (char ch : value) { + if (ch == '"') { + escaped.push_back('"'); + } + escaped.push_back(ch); + } + escaped.push_back('"'); + return escaped; +} + +std::string jsonEscape(std::string_view value) { + std::ostringstream escaped; + for (unsigned char ch : value) { + switch (ch) { + case '"': + escaped << "\\\""; + break; + case '\\': + escaped << "\\\\"; + break; + case '\b': + escaped << "\\b"; + break; + case '\f': + escaped << "\\f"; + break; + case '\n': + escaped << "\\n"; + break; + case '\r': + escaped << "\\r"; + break; + case '\t': + escaped << "\\t"; + break; + default: + if (ch < 0x20) { + escaped << "\\u" << std::hex << std::setw(4) + << std::setfill('0') << static_cast(ch) + << std::dec << std::setfill(' '); + } else { + escaped << static_cast(ch); + } + break; + } + } + return escaped.str(); +} + +std::string jsonString(std::string_view value) { + std::string quoted = "\""; + quoted += jsonEscape(value); + quoted += "\""; + return quoted; +} + +std::string jsonDouble(double value) { + if (!std::isfinite(value)) { + return "null"; + } + return formatDouble(value); +} + +std::string jsonBool(bool value) { + return boolText(value); +} + +std::filesystem::path outputFilePath( + const CliOptions& options, + std::string_view file_name) { + const std::filesystem::path output_dir = + options.output_dir.empty() ? std::filesystem::path(".") + : std::filesystem::path(options.output_dir); + return output_dir / std::string(file_name); +} + +void writeTextFile( + const std::filesystem::path& file_path, + const std::string& contents) { + const std::filesystem::path parent_path = file_path.parent_path(); + if (!parent_path.empty()) { + std::filesystem::create_directories(parent_path); + } + + std::ofstream output(file_path, std::ios::out | std::ios::trunc); + if (!output) { + throw std::runtime_error( + "Unable to open output file: " + file_path.string()); + } + output << contents; + if (!output) { + throw std::runtime_error( + "Unable to write output file: " + file_path.string()); + } +} + +void appendCsvRow( + std::ostringstream& output, + const std::vector& fields) { + for (std::size_t index = 0; index < fields.size(); ++index) { + if (index > 0) { + output << ","; + } + output << csvEscape(fields[index]); + } + output << "\n"; +} + +void writeCsvFile( + const std::filesystem::path& file_path, + const std::vector& header, + const std::vector>& rows) { + std::ostringstream output; + appendCsvRow(output, header); + for (const std::vector& row : rows) { + appendCsvRow(output, row); + } + writeTextFile(file_path, output.str()); +} + +void appendJsonField( + std::ostringstream& output, + int indent, + std::string_view key, + const std::string& value, + bool trailing_comma) { + output << std::string(indent, ' ') << jsonString(key) << ": " << value; + if (trailing_comma) { + output << ","; + } + output << "\n"; +} + +using JsonField = std::pair; + +void appendJsonObject( + std::ostringstream& output, + const std::vector& fields, + int indent) { + output << std::string(indent, ' ') << "{\n"; + for (std::size_t index = 0; index < fields.size(); ++index) { + appendJsonField( + output, + indent + 2, + fields[index].first, + fields[index].second, + index + 1 < fields.size()); + } + output << std::string(indent, ' ') << "}"; +} + +std::vector benchmarkResultHeader() { + return { + "test_id", + "num_macros", + "num_std_cells", + "total_cells", + "num_nets", + "seed", + "device", + "elapsed_seconds", + "num_cells_with_overlaps", + "overlap_ratio", + "normalized_wl", + "passed", + }; +} + +std::vector benchmarkResultRow( + const placement::BenchmarkResult& result) { + return { + std::to_string(result.test_id), + std::to_string(result.num_macros), + std::to_string(result.num_std_cells), + std::to_string(result.total_cells), + std::to_string(result.num_nets), + std::to_string(result.seed), + deviceTypeName(result.device), + formatDouble(result.elapsed_seconds), + std::to_string(result.num_cells_with_overlaps), + formatDouble(result.overlap_ratio), + formatDouble(result.normalized_wl), + boolText(result.passed), + }; +} + +std::vector benchmarkResultJsonFields( + const placement::BenchmarkResult& result) { + return { + {"test_id", std::to_string(result.test_id)}, + {"num_macros", std::to_string(result.num_macros)}, + {"num_std_cells", std::to_string(result.num_std_cells)}, + {"total_cells", std::to_string(result.total_cells)}, + {"num_nets", std::to_string(result.num_nets)}, + {"seed", std::to_string(result.seed)}, + {"device", jsonString(deviceTypeName(result.device))}, + {"elapsed_seconds", jsonDouble(result.elapsed_seconds)}, + {"num_cells_with_overlaps", + std::to_string(result.num_cells_with_overlaps)}, + {"overlap_ratio", jsonDouble(result.overlap_ratio)}, + {"normalized_wl", jsonDouble(result.normalized_wl)}, + {"passed", jsonBool(result.passed)}, + }; +} + +std::vector singlePlacementHeader() { + return { + "run_type", + "test_case_id", + "seed", + "device", + "num_macros", + "num_std_cells", + "total_cells", + "num_nets", + "initial_overlap_count", + "initial_total_overlap_area", + "initial_max_overlap_area", + "initial_overlap_percentage", + "initial_cells_with_overlap", + "initial_has_zero_overlap", + "final_overlap_count", + "final_total_overlap_area", + "final_max_overlap_area", + "final_overlap_percentage", + "final_cells_with_overlap", + "final_has_zero_overlap", + "normalized_overlap_ratio", + "normalized_wl", + "normalized_num_cells_with_overlaps", + "normalized_total_cells", + "normalized_num_nets", + "passed", + "stopped_early", + "stop_reason", + "best_epoch", + "num_epochs", + "early_stop_enabled", + "early_stop_patience", + "early_stop_min_delta", + "early_stop_overlap_threshold", + "early_stop_zero_overlap_patience", + }; +} + +std::vector singlePlacementRow( + const placement::BenchmarkCase& selected_case, + const placement::TrainingConfig& config, + const placement::OverlapMetrics& initial_metrics, + const placement::OverlapMetrics& final_metrics, + const placement::Metrics& normalized_metrics, + const placement::TrainingResult& training_result, + bool passed) { + return { + "single", + std::to_string(selected_case.test_id), + std::to_string(selected_case.seed), + deviceTypeName(config.device), + std::to_string(selected_case.num_macros), + std::to_string(selected_case.num_std_cells), + std::to_string(normalized_metrics.total_cells), + std::to_string(normalized_metrics.num_nets), + std::to_string(initial_metrics.overlap_count), + formatDouble(initial_metrics.total_overlap_area), + formatDouble(initial_metrics.max_overlap_area), + formatDouble(initial_metrics.overlap_percentage), + std::to_string(initial_metrics.cells_with_overlap), + boolText(initial_metrics.has_zero_overlap), + std::to_string(final_metrics.overlap_count), + formatDouble(final_metrics.total_overlap_area), + formatDouble(final_metrics.max_overlap_area), + formatDouble(final_metrics.overlap_percentage), + std::to_string(final_metrics.cells_with_overlap), + boolText(final_metrics.has_zero_overlap), + formatDouble(normalized_metrics.overlap_ratio), + formatDouble(normalized_metrics.normalized_wl), + std::to_string(normalized_metrics.num_cells_with_overlaps), + std::to_string(normalized_metrics.total_cells), + std::to_string(normalized_metrics.num_nets), + boolText(passed), + boolText(training_result.stopped_early), + training_result.stop_reason, + std::to_string(training_result.best_epoch), + std::to_string(config.num_epochs), + boolText(config.early_stop_enabled), + std::to_string(config.early_stop_patience), + formatDouble(config.early_stop_min_delta), + formatDouble(config.early_stop_overlap_threshold), + std::to_string(config.early_stop_zero_overlap_patience), + }; +} + +std::vector singlePlacementJsonFields( + const placement::BenchmarkCase& selected_case, + const placement::TrainingConfig& config, + const placement::OverlapMetrics& initial_metrics, + const placement::OverlapMetrics& final_metrics, + const placement::Metrics& normalized_metrics, + const placement::TrainingResult& training_result, + bool passed) { + return { + {"run_type", jsonString("single")}, + {"test_case_id", std::to_string(selected_case.test_id)}, + {"seed", std::to_string(selected_case.seed)}, + {"device", jsonString(deviceTypeName(config.device))}, + {"num_macros", std::to_string(selected_case.num_macros)}, + {"num_std_cells", std::to_string(selected_case.num_std_cells)}, + {"total_cells", std::to_string(normalized_metrics.total_cells)}, + {"num_nets", std::to_string(normalized_metrics.num_nets)}, + {"initial_overlap_count", + std::to_string(initial_metrics.overlap_count)}, + {"initial_total_overlap_area", + jsonDouble(initial_metrics.total_overlap_area)}, + {"initial_max_overlap_area", + jsonDouble(initial_metrics.max_overlap_area)}, + {"initial_overlap_percentage", + jsonDouble(initial_metrics.overlap_percentage)}, + {"initial_cells_with_overlap", + std::to_string(initial_metrics.cells_with_overlap)}, + {"initial_has_zero_overlap", + jsonBool(initial_metrics.has_zero_overlap)}, + {"final_overlap_count", std::to_string(final_metrics.overlap_count)}, + {"final_total_overlap_area", + jsonDouble(final_metrics.total_overlap_area)}, + {"final_max_overlap_area", jsonDouble(final_metrics.max_overlap_area)}, + {"final_overlap_percentage", + jsonDouble(final_metrics.overlap_percentage)}, + {"final_cells_with_overlap", + std::to_string(final_metrics.cells_with_overlap)}, + {"final_has_zero_overlap", jsonBool(final_metrics.has_zero_overlap)}, + {"normalized_overlap_ratio", + jsonDouble(normalized_metrics.overlap_ratio)}, + {"normalized_wl", jsonDouble(normalized_metrics.normalized_wl)}, + {"normalized_num_cells_with_overlaps", + std::to_string(normalized_metrics.num_cells_with_overlaps)}, + {"normalized_total_cells", + std::to_string(normalized_metrics.total_cells)}, + {"normalized_num_nets", std::to_string(normalized_metrics.num_nets)}, + {"passed", jsonBool(passed)}, + {"stopped_early", jsonBool(training_result.stopped_early)}, + {"stop_reason", jsonString(training_result.stop_reason)}, + {"best_epoch", std::to_string(training_result.best_epoch)}, + {"num_epochs", std::to_string(config.num_epochs)}, + {"early_stop_enabled", jsonBool(config.early_stop_enabled)}, + {"early_stop_patience", std::to_string(config.early_stop_patience)}, + {"early_stop_min_delta", jsonDouble(config.early_stop_min_delta)}, + {"early_stop_overlap_threshold", + jsonDouble(config.early_stop_overlap_threshold)}, + {"early_stop_zero_overlap_patience", + std::to_string(config.early_stop_zero_overlap_patience)}, + }; +} + +void writeSinglePlacementArtifacts( + const CliOptions& options, + const placement::BenchmarkCase& selected_case, + const placement::TrainingConfig& config, + const placement::OverlapMetrics& initial_metrics, + const placement::OverlapMetrics& final_metrics, + const placement::Metrics& normalized_metrics, + const placement::TrainingResult& training_result, + bool passed) { + writeCsvFile( + outputFilePath(options, "placement_result_summary.csv"), + singlePlacementHeader(), + {singlePlacementRow( + selected_case, + config, + initial_metrics, + final_metrics, + normalized_metrics, + training_result, + passed)}); + + std::ostringstream json; + appendJsonObject( + json, + singlePlacementJsonFields( + selected_case, + config, + initial_metrics, + final_metrics, + normalized_metrics, + training_result, + passed), + 0); + json << "\n"; + writeTextFile(outputFilePath(options, "placement_result_summary.json"), json.str()); +} + +void writeBenchmarkArtifacts( + const CliOptions& options, + const placement::BenchmarkSummary& summary) { + std::vector> case_rows; + case_rows.reserve(summary.results.size()); + for (const placement::BenchmarkResult& result : summary.results) { + case_rows.push_back(benchmarkResultRow(result)); + } + writeCsvFile( + outputFilePath(options, "placement_benchmark_cases.csv"), + benchmarkResultHeader(), + case_rows); + + writeCsvFile( + outputFilePath(options, "placement_benchmark_summary.csv"), + {"total_cases", + "average_overlap", + "average_wirelength", + "total_elapsed_seconds", + "passed_count", + "failed_count"}, + {{std::to_string(summary.results.size()), + formatDouble(summary.average_overlap), + formatDouble(summary.average_wirelength), + formatDouble(summary.total_elapsed_seconds), + std::to_string(summary.passed_count), + std::to_string(summary.failed_count)}}); + + std::ostringstream json; + json << "{\n"; + appendJsonField( + json, + 2, + "total_cases", + std::to_string(summary.results.size()), + true); + appendJsonField( + json, + 2, + "average_overlap", + jsonDouble(summary.average_overlap), + true); + appendJsonField( + json, + 2, + "average_wirelength", + jsonDouble(summary.average_wirelength), + true); + appendJsonField( + json, + 2, + "total_elapsed_seconds", + jsonDouble(summary.total_elapsed_seconds), + true); + appendJsonField( + json, + 2, + "passed_count", + std::to_string(summary.passed_count), + true); + appendJsonField( + json, + 2, + "failed_count", + std::to_string(summary.failed_count), + true); + json << " \"cases\": [\n"; + for (std::size_t index = 0; index < summary.results.size(); ++index) { + appendJsonObject(json, benchmarkResultJsonFields(summary.results[index]), 4); + if (index + 1 < summary.results.size()) { + json << ","; + } + json << "\n"; + } + json << " ]\n"; + json << "}\n"; + writeTextFile(outputFilePath(options, "placement_benchmark_summary.json"), json.str()); +} + void printRule(char c = '=') { std::cout << std::string(70, c) << "\n"; } @@ -139,7 +634,9 @@ void printBenchmarkResult(const placement::BenchmarkResult& result) { std::cout << " Status: " << status << "\n\n"; } -int runBenchmark(const placement::TrainingConfig& config) { +int runBenchmark( + const CliOptions& options, + const placement::TrainingConfig& config) { printRule(); std::cout << "PLACEMENT CHALLENGE TEST SUITE\n"; printRule(); @@ -180,6 +677,9 @@ int runBenchmark(const placement::TrainingConfig& config) { << summary.total_elapsed_seconds << "s\n"; std::cout << "Passed: " << summary.passed_count << "\n"; std::cout << "Failed: " << summary.failed_count << "\n"; + if (options.write_output_files) { + writeBenchmarkArtifacts(options, summary); + } return 0; } @@ -284,13 +784,26 @@ int runSinglePlacement( printRule(); std::cout << "SUCCESS CRITERIA\n"; printRule(); - if (normalized_metrics.num_cells_with_overlaps == 0) { + const bool passed = normalized_metrics.num_cells_with_overlaps == 0; + if (passed) { std::cout << "PASS: No overlapping cells.\n"; - return 0; + } else { + std::cout << "FAIL: Overlaps remain in " + << normalized_metrics.num_cells_with_overlaps << " cells.\n"; + } + + if (options.write_output_files) { + writeSinglePlacementArtifacts( + options, + selected_case, + config, + initial_metrics, + final_overlap_metrics, + normalized_metrics, + training_result, + passed); } - std::cout << "FAIL: Overlaps remain in " - << normalized_metrics.num_cells_with_overlaps << " cells.\n"; return 0; } @@ -320,6 +833,14 @@ void configureCli( options.num_std_cells, "Number of standard cells for a single placement run."); app.add_option("--seed", options.seed, "Random seed for a single placement run."); + app.add_flag( + "--write-output-files", + options.write_output_files, + "Write notebook-friendly CSV and JSON output artifacts."); + app.add_option( + "--output-dir", + options.output_dir, + "Directory for output artifacts when --write-output-files is set."); app.add_option( "--num-epochs", @@ -443,7 +964,7 @@ int main(int argc, char** argv) { if (options.run_benchmark) { config.verbose = false; - return runBenchmark(config); + return runBenchmark(options, config); } return runSinglePlacement(options, config); } catch (const c10::Error& error) { From cb70ad49661cb638e11b2f7f49c51e9e1534d165 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 13:21:39 -0700 Subject: [PATCH 40/48] Wire final C++ output artifacts --- cpp/PORT_PLAN.md | 182 ++++++++++++++++++++++++++++++++++++ cpp/cmake/RunCoverage.cmake | 1 + cpp/main.cpp | 23 ++++- 3 files changed, 202 insertions(+), 4 deletions(-) create mode 100644 cpp/PORT_PLAN.md diff --git a/cpp/PORT_PLAN.md b/cpp/PORT_PLAN.md new file mode 100644 index 0000000..06613c5 --- /dev/null +++ b/cpp/PORT_PLAN.md @@ -0,0 +1,182 @@ +# C++ Port Coordination Plan + +## Summary + +This file is the shared recovery plan for porting the Python placement flow from +`placement.py` and `test.py` into the C++ implementation under `cpp/`. + +## Current Status + +- The C++ project builds. +- `cpp/generation.cpp` contains a real implementation for synthetic placement + input generation and initial cell placement. +- `cpp/metrics.cpp` now implements overlap metrics and normalized metrics to + match the Python metric behavior. +- `cpp/tests/metrics_tests.cpp` covers the metrics implementation with a + deterministic hand-authored placement, a generated-placement integration + smoke test, loss parity checks, loss edge cases, an autograd smoke test, and + focused training-loop and benchmark-runner checks. +- `cpp/tests/visualization_tests.cpp` covers SVG placement visualization output. +- `cpp/CMakeLists.txt` registers `placement_unit_tests` with CTest when + `BUILD_TESTING` is enabled. +- `cpp/CMakeLists.txt` also exposes opt-in LLVM source coverage through + `PLACEMENT_ENABLE_COVERAGE` and the `placement_coverage` target. +- `cpp/CMakeLists.txt` now prefers a PATH Python that can import `torch` when no + repo-local `.venv` exists, avoiding macOS CMake selecting a newer Python + without the required Torch package. +- `cpp/CMakePresets.json` includes a `coverage` preset that writes coverage + build artifacts to `cpp/build-coverage`. +- `cpp/losses.cpp` now implements `wirelengthAttractionLoss`, + `computePairwiseOverlapAreas`, and `overlapRepulsionLoss` to match the + Python formulas in `placement.py`. +- `cpp/training.cpp` now implements the core `train_placement` loop: Adam over + cell positions, weighted wirelength/overlap losses, gradient clipping, + supported learning-rate schedulers, best-position tracking, and early-stop + metadata. +- Tests and coverage were re-verified on 2026-04-26 after the graphing and + notebook artifact work. +- `cpp/benchmark.cpp` now implements active benchmark case metadata, single-case + execution using the configured device enum, serial multi-case execution, + ordered results, aggregate averages, total elapsed time, and pass/fail counts. +- `cpp/main.cpp` now implements the `placement` binary CLI for single placement + runs, ordered serial active benchmark runs, SVG visualization output, and + notebook-friendly CSV/JSON artifact files. +- `cpp/visualization.cpp` now emits a dependency-free SVG visualization with + side-by-side initial/final placements and overlap metrics. + +## Source Of Truth + +- `placement.py` is the source of truth for placement generation semantics, + loss formulas, overlap metrics, normalized metrics, training behavior, and the + single-run CLI flow. +- `test.py` is the source of truth for benchmark execution, per-case result + fields, aggregate metrics, and pass/fail reporting. +- `benchmark_test_cases.py` is the source of truth for active benchmark cases. +- C++ code should preserve the public struct fields already declared in + `cpp/include/placement/types.h` unless a later step explicitly approves an + interface change. + +## Working Protocol + +After each implementation step, stop and ask for explicit permission before +editing code for the next step. + +Permission checkpoints: + +1. Write or update this plan file. +2. Ask permission before editing `cpp/metrics.cpp`. +3. Add unit coverage for features implemented so far before moving to the next + porting area. +4. Continue this pattern for training, benchmark runner, and CLI work. + +## Immediate Next Step + +The current scoped roadmap is complete. Optional deferred items remain for a +later scope decision: SQLite loss history, profiling, and multiprocessing. + +Recently verified commands from `cpp/`: + +```sh +cmake --build --preset release --target placement_unit_tests +cmake --build --preset release --target placement +ctest --test-dir build -R placement_unit_tests --output-on-failure +cmake --build --preset coverage --target placement_coverage +./build/placement --num-macros 0 --num-std-cells 1 --num-epochs 0 --scheduler none --quiet --write-output-files --output-dir +./build/placement --benchmark --num-epochs 0 --scheduler none --write-output-files --output-dir +``` + +The latest coverage run reported: + +- `benchmark.cpp`: 96.43% line coverage +- `generation.cpp`: 92.26% line coverage +- `losses.cpp`: 100.00% line coverage +- `metrics.cpp`: 93.89% line coverage +- `training.cpp`: 57.51% line coverage +- `visualization.cpp`: 88.53% line coverage +- Total: 83.63% line coverage + +The implemented metrics behavior is: + +- `calculateOverlapMetrics` computes overlap pair count, total overlap area, + max single-pair overlap area, overlap percentage, cells involved in at least + one overlap, and whether the placement has zero overlap. +- `calculateNormalizedMetrics` computes total cells, number of nets, number of + cells with overlaps, overlap ratio, and normalized wirelength. +- The normalized wirelength formula matches `calculate_normalized_metrics` in + `placement.py`: `(wirelength / num_nets) / sqrt(total_area)`, with zero + returned when there are no nets or total area is zero. +- `wirelengthAttractionLoss` matches Python's average smooth Manhattan + wirelength with `alpha = 0.1`. +- `computePairwiseOverlapAreas` returns the full pairwise overlap-area matrix, + including diagonal self areas. +- `overlapRepulsionLoss` matches Python's + `log1p(sum(upper_triangle_overlap_area)) * 200` formula. +- `trainPlacement` preserves the C++ result interface while porting the Python + optimizer behavior that affects placement quality and early-stop selection. +- `activeBenchmarkCases` matches `benchmark_test_cases.py` active cases. +- `runBenchmarkCase` mirrors the per-case benchmark flow from `test.py`: seed, + generate on the configured device enum, initialize, train with quiet logging, + calculate normalized metrics, record elapsed time, and mark pass/fail from + zero overlapping cells. +- `runBenchmarkCases` and `runActiveBenchmarkCases` provide ordered serial + benchmark execution and aggregate average overlap/wirelength reporting. +- The `placement` CLI supports the shared training hyperparameters, device + selection, single-run problem generation by size or test-case id, and active + benchmark reporting. +- `plotPlacement` writes an SVG with initial/final placement panels, cell + rectangles, grid lines, and overlap metrics. +- `--write-output-files` writes notebook-friendly artifacts: + `placement_result_summary.csv`, `placement_result_summary.json`, and + `placement_result.svg` for single runs; `placement_benchmark_cases.csv`, + `placement_benchmark_summary.csv`, and `placement_benchmark_summary.json` for + benchmark runs. +- SQLite loss history, profiling, and multiprocessing remain deferred. + +## Port Roadmap + +- [x] Metrics parity. +- [x] Loss function parity. +- [x] Training loop parity. +- [x] Benchmark/test runner parity. +- [x] CLI and output cleanup. +- [x] Add graphing parity. +- [x] Create output files that can be consumed by notebooks in the lab directory. + +## Recovery Notes + +If a future session resumes from scratch, inspect these files first: + +- `cpp/PORT_PLAN.md` +- `cpp/metrics.cpp` +- `cpp/losses.cpp` +- `cpp/training.cpp` +- `cpp/benchmark.cpp` +- `cpp/main.cpp` +- `cpp/visualization.cpp` +- `cpp/include/placement/visualization.h` +- `cpp/include/placement/types.h` +- `cpp/tests/metrics_tests.cpp` +- `cpp/tests/visualization_tests.cpp` +- `cpp/cmake/RunCoverage.cmake` +- `placement.py` +- `test.py` + +Useful read-only commands: + +```sh +rg -n "calculate_overlap|calculate_normalized|wirelength|overlap_repulsion|train_placement" placement.py test.py cpp +sed -n '1,220p' cpp/metrics.cpp +sed -n '1,220p' cpp/tests/metrics_tests.cpp +sed -n '829,995p' placement.py +sed -n '320,535p' placement.py +cmake --build cpp/build --target placement_unit_tests --config Release +ctest --test-dir cpp/build -R placement_unit_tests --output-on-failure +cmake --preset coverage +cmake --build --preset coverage --target placement_coverage +cat cpp/build-coverage/coverage/placement_unit_tests.txt +``` + +Coverage outputs: + +- Text summary: `cpp/build-coverage/coverage/placement_unit_tests.txt` +- HTML report: `cpp/build-coverage/coverage/html/index.html` diff --git a/cpp/cmake/RunCoverage.cmake b/cpp/cmake/RunCoverage.cmake index 3b8052f..5f327f2 100644 --- a/cpp/cmake/RunCoverage.cmake +++ b/cpp/cmake/RunCoverage.cmake @@ -37,6 +37,7 @@ set(covered_sources "${SOURCE_DIR}/losses.cpp" "${SOURCE_DIR}/metrics.cpp" "${SOURCE_DIR}/training.cpp" + "${SOURCE_DIR}/visualization.cpp" ) execute_process( diff --git a/cpp/main.cpp b/cpp/main.cpp index 3996e1b..6aabbc1 100644 --- a/cpp/main.cpp +++ b/cpp/main.cpp @@ -3,6 +3,7 @@ #include "placement/metrics.h" #include "placement/training.h" #include "placement/types.h" +#include "placement/visualization.h" #include #include @@ -365,6 +366,7 @@ std::vector singlePlacementHeader() { "early_stop_min_delta", "early_stop_overlap_threshold", "early_stop_zero_overlap_patience", + "visualization_path", }; } @@ -375,7 +377,8 @@ std::vector singlePlacementRow( const placement::OverlapMetrics& final_metrics, const placement::Metrics& normalized_metrics, const placement::TrainingResult& training_result, - bool passed) { + bool passed, + const std::filesystem::path& visualization_path) { return { "single", std::to_string(selected_case.test_id), @@ -412,6 +415,7 @@ std::vector singlePlacementRow( formatDouble(config.early_stop_min_delta), formatDouble(config.early_stop_overlap_threshold), std::to_string(config.early_stop_zero_overlap_patience), + visualization_path.string(), }; } @@ -422,7 +426,8 @@ std::vector singlePlacementJsonFields( const placement::OverlapMetrics& final_metrics, const placement::Metrics& normalized_metrics, const placement::TrainingResult& training_result, - bool passed) { + bool passed, + const std::filesystem::path& visualization_path) { return { {"run_type", jsonString("single")}, {"test_case_id", std::to_string(selected_case.test_id)}, @@ -473,6 +478,7 @@ std::vector singlePlacementJsonFields( jsonDouble(config.early_stop_overlap_threshold)}, {"early_stop_zero_overlap_patience", std::to_string(config.early_stop_zero_overlap_patience)}, + {"visualization_path", jsonString(visualization_path.string())}, }; } @@ -485,6 +491,13 @@ void writeSinglePlacementArtifacts( const placement::Metrics& normalized_metrics, const placement::TrainingResult& training_result, bool passed) { + const std::filesystem::path visualization_path = + outputFilePath(options, "placement_result.svg"); + placement::plotPlacement( + training_result.initial_cell_features, + training_result.final_cell_features, + visualization_path); + writeCsvFile( outputFilePath(options, "placement_result_summary.csv"), singlePlacementHeader(), @@ -495,7 +508,8 @@ void writeSinglePlacementArtifacts( final_metrics, normalized_metrics, training_result, - passed)}); + passed, + visualization_path)}); std::ostringstream json; appendJsonObject( @@ -507,7 +521,8 @@ void writeSinglePlacementArtifacts( final_metrics, normalized_metrics, training_result, - passed), + passed, + visualization_path), 0); json << "\n"; writeTextFile(outputFilePath(options, "placement_result_summary.json"), json.str()); From f3b01fd6db0caca40f8e9d5efe3a93d7632b85b0 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 13:22:16 -0700 Subject: [PATCH 41/48] Document fast-forward integration protocol --- cpp/PORT_PLAN.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cpp/PORT_PLAN.md b/cpp/PORT_PLAN.md index 06613c5..3f4eeac 100644 --- a/cpp/PORT_PLAN.md +++ b/cpp/PORT_PLAN.md @@ -61,6 +61,9 @@ This file is the shared recovery plan for porting the Python placement flow from After each implementation step, stop and ask for explicit permission before editing code for the next step. +Use branch/worktree coordination for delegated work, and integrate branches into +`main` with fast-forward-only merges. + Permission checkpoints: 1. Write or update this plan file. From d0cc15221edd8039475cbdf01a3c0853f54d1fa4 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 14:06:33 -0700 Subject: [PATCH 42/48] port test.py into test binary --- .gitignore | 3 + cpp/CMakeLists.txt | 9 +- cpp/main.cpp | 991 --------------------------------------------- 3 files changed, 11 insertions(+), 992 deletions(-) delete mode 100644 cpp/main.cpp diff --git a/.gitignore b/.gitignore index 5309e84..c154309 100644 --- a/.gitignore +++ b/.gitignore @@ -12,6 +12,9 @@ loss_tracking/* **/__pycache__/** temp.txt +# Plan files +*[Pp][Ll][Aa][Nn]*.md + # C++ build and vcpkg manifest artifacts cpp/build/ cpp/build-coverage/ diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index 9c999a6..8194fea 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -107,11 +107,16 @@ target_link_libraries(placement_core PUBLIC "${TORCH_LIBRARIES}") target_compile_features(placement_core PUBLIC cxx_std_20) enable_placement_coverage(placement_core) -add_executable(placement main.cpp) +add_executable(placement placement.cpp) target_link_libraries(placement PRIVATE placement_core CLI11::CLI11) target_compile_features(placement PRIVATE cxx_std_20) enable_placement_coverage(placement) +add_executable(placement_test test.cpp) +target_link_libraries(placement_test PRIVATE placement_core CLI11::CLI11) +target_compile_features(placement_test PRIVATE cxx_std_20) +enable_placement_coverage(placement_test) + if(BUILD_TESTING) add_executable( placement_unit_tests @@ -143,12 +148,14 @@ endif() if(MSVC) target_compile_options(placement_core PRIVATE /W4) target_compile_options(placement PRIVATE /W4) + target_compile_options(placement_test PRIVATE /W4) if(TARGET placement_unit_tests) target_compile_options(placement_unit_tests PRIVATE /W4) endif() else() target_compile_options(placement_core PRIVATE -Wall -Wextra -Wpedantic) target_compile_options(placement PRIVATE -Wall -Wextra -Wpedantic) + target_compile_options(placement_test PRIVATE -Wall -Wextra -Wpedantic) if(TARGET placement_unit_tests) target_compile_options(placement_unit_tests PRIVATE -Wall -Wextra -Wpedantic) endif() diff --git a/cpp/main.cpp b/cpp/main.cpp deleted file mode 100644 index 6aabbc1..0000000 --- a/cpp/main.cpp +++ /dev/null @@ -1,991 +0,0 @@ -#include "placement/benchmark.h" -#include "placement/generation.h" -#include "placement/metrics.h" -#include "placement/training.h" -#include "placement/types.h" -#include "placement/visualization.h" - -#include -#include -#include -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -namespace { - -struct CliOptions { - bool run_benchmark = false; - std::string device = "auto"; - int test_case_id = 0; - int num_macros = 3; - int num_std_cells = 10; - int seed = 42; - bool write_output_files = false; - std::string output_dir = "."; -}; - -std::string deviceTypeName(c10::DeviceType device) { - switch (device) { - case c10::DeviceType::CPU: - return "cpu"; - case c10::DeviceType::CUDA: - return "cuda"; - case c10::DeviceType::MPS: - return "mps"; - default: - return "unknown"; - } -} - -c10::DeviceType resolveDeviceType(const std::string& device) { - if (device == "auto") { - if (torch::cuda::is_available()) { - return torch::kCUDA; - } - if (torch::mps::is_available()) { - return torch::kMPS; - } - return torch::kCPU; - } - if (device == "cpu") { - return torch::kCPU; - } - if (device == "cuda") { - if (!torch::cuda::is_available()) { - throw std::invalid_argument("CUDA device requested but unavailable"); - } - return torch::kCUDA; - } - if (device == "mps") { - if (!torch::mps::is_available()) { - throw std::invalid_argument("MPS device requested but unavailable"); - } - return torch::kMPS; - } - throw std::invalid_argument("Unsupported device: " + device); -} - -void seedTorch(int seed) { - torch::manual_seed(static_cast(seed)); - if (torch::cuda::is_available()) { - torch::cuda::manual_seed_all(static_cast(seed)); - } - if (torch::mps::is_available()) { - torch::mps::manual_seed(static_cast(seed)); - } -} - -std::vector allKnownBenchmarkCases() { - std::vector cases( - placement::activeBenchmarkCases().begin(), - placement::activeBenchmarkCases().end()); - cases.push_back({11, 10, 10000, 1011}); - cases.push_back({12, 10, 100000, 1012}); - return cases; -} - -std::optional findBenchmarkCase(int test_case_id) { - for (const placement::BenchmarkCase& test_case : allKnownBenchmarkCases()) { - if (test_case.test_id == test_case_id) { - return test_case; - } - } - return std::nullopt; -} - -std::string formatDouble(double value) { - std::ostringstream stream; - stream << std::setprecision(17) << value; - return stream.str(); -} - -std::string boolText(bool value) { - return value ? "true" : "false"; -} - -std::string csvEscape(std::string_view value) { - if (value.find_first_of("\",\n\r") == std::string_view::npos) { - return std::string(value); - } - - std::string escaped; - escaped.reserve(value.size() + 2); - escaped.push_back('"'); - for (char ch : value) { - if (ch == '"') { - escaped.push_back('"'); - } - escaped.push_back(ch); - } - escaped.push_back('"'); - return escaped; -} - -std::string jsonEscape(std::string_view value) { - std::ostringstream escaped; - for (unsigned char ch : value) { - switch (ch) { - case '"': - escaped << "\\\""; - break; - case '\\': - escaped << "\\\\"; - break; - case '\b': - escaped << "\\b"; - break; - case '\f': - escaped << "\\f"; - break; - case '\n': - escaped << "\\n"; - break; - case '\r': - escaped << "\\r"; - break; - case '\t': - escaped << "\\t"; - break; - default: - if (ch < 0x20) { - escaped << "\\u" << std::hex << std::setw(4) - << std::setfill('0') << static_cast(ch) - << std::dec << std::setfill(' '); - } else { - escaped << static_cast(ch); - } - break; - } - } - return escaped.str(); -} - -std::string jsonString(std::string_view value) { - std::string quoted = "\""; - quoted += jsonEscape(value); - quoted += "\""; - return quoted; -} - -std::string jsonDouble(double value) { - if (!std::isfinite(value)) { - return "null"; - } - return formatDouble(value); -} - -std::string jsonBool(bool value) { - return boolText(value); -} - -std::filesystem::path outputFilePath( - const CliOptions& options, - std::string_view file_name) { - const std::filesystem::path output_dir = - options.output_dir.empty() ? std::filesystem::path(".") - : std::filesystem::path(options.output_dir); - return output_dir / std::string(file_name); -} - -void writeTextFile( - const std::filesystem::path& file_path, - const std::string& contents) { - const std::filesystem::path parent_path = file_path.parent_path(); - if (!parent_path.empty()) { - std::filesystem::create_directories(parent_path); - } - - std::ofstream output(file_path, std::ios::out | std::ios::trunc); - if (!output) { - throw std::runtime_error( - "Unable to open output file: " + file_path.string()); - } - output << contents; - if (!output) { - throw std::runtime_error( - "Unable to write output file: " + file_path.string()); - } -} - -void appendCsvRow( - std::ostringstream& output, - const std::vector& fields) { - for (std::size_t index = 0; index < fields.size(); ++index) { - if (index > 0) { - output << ","; - } - output << csvEscape(fields[index]); - } - output << "\n"; -} - -void writeCsvFile( - const std::filesystem::path& file_path, - const std::vector& header, - const std::vector>& rows) { - std::ostringstream output; - appendCsvRow(output, header); - for (const std::vector& row : rows) { - appendCsvRow(output, row); - } - writeTextFile(file_path, output.str()); -} - -void appendJsonField( - std::ostringstream& output, - int indent, - std::string_view key, - const std::string& value, - bool trailing_comma) { - output << std::string(indent, ' ') << jsonString(key) << ": " << value; - if (trailing_comma) { - output << ","; - } - output << "\n"; -} - -using JsonField = std::pair; - -void appendJsonObject( - std::ostringstream& output, - const std::vector& fields, - int indent) { - output << std::string(indent, ' ') << "{\n"; - for (std::size_t index = 0; index < fields.size(); ++index) { - appendJsonField( - output, - indent + 2, - fields[index].first, - fields[index].second, - index + 1 < fields.size()); - } - output << std::string(indent, ' ') << "}"; -} - -std::vector benchmarkResultHeader() { - return { - "test_id", - "num_macros", - "num_std_cells", - "total_cells", - "num_nets", - "seed", - "device", - "elapsed_seconds", - "num_cells_with_overlaps", - "overlap_ratio", - "normalized_wl", - "passed", - }; -} - -std::vector benchmarkResultRow( - const placement::BenchmarkResult& result) { - return { - std::to_string(result.test_id), - std::to_string(result.num_macros), - std::to_string(result.num_std_cells), - std::to_string(result.total_cells), - std::to_string(result.num_nets), - std::to_string(result.seed), - deviceTypeName(result.device), - formatDouble(result.elapsed_seconds), - std::to_string(result.num_cells_with_overlaps), - formatDouble(result.overlap_ratio), - formatDouble(result.normalized_wl), - boolText(result.passed), - }; -} - -std::vector benchmarkResultJsonFields( - const placement::BenchmarkResult& result) { - return { - {"test_id", std::to_string(result.test_id)}, - {"num_macros", std::to_string(result.num_macros)}, - {"num_std_cells", std::to_string(result.num_std_cells)}, - {"total_cells", std::to_string(result.total_cells)}, - {"num_nets", std::to_string(result.num_nets)}, - {"seed", std::to_string(result.seed)}, - {"device", jsonString(deviceTypeName(result.device))}, - {"elapsed_seconds", jsonDouble(result.elapsed_seconds)}, - {"num_cells_with_overlaps", - std::to_string(result.num_cells_with_overlaps)}, - {"overlap_ratio", jsonDouble(result.overlap_ratio)}, - {"normalized_wl", jsonDouble(result.normalized_wl)}, - {"passed", jsonBool(result.passed)}, - }; -} - -std::vector singlePlacementHeader() { - return { - "run_type", - "test_case_id", - "seed", - "device", - "num_macros", - "num_std_cells", - "total_cells", - "num_nets", - "initial_overlap_count", - "initial_total_overlap_area", - "initial_max_overlap_area", - "initial_overlap_percentage", - "initial_cells_with_overlap", - "initial_has_zero_overlap", - "final_overlap_count", - "final_total_overlap_area", - "final_max_overlap_area", - "final_overlap_percentage", - "final_cells_with_overlap", - "final_has_zero_overlap", - "normalized_overlap_ratio", - "normalized_wl", - "normalized_num_cells_with_overlaps", - "normalized_total_cells", - "normalized_num_nets", - "passed", - "stopped_early", - "stop_reason", - "best_epoch", - "num_epochs", - "early_stop_enabled", - "early_stop_patience", - "early_stop_min_delta", - "early_stop_overlap_threshold", - "early_stop_zero_overlap_patience", - "visualization_path", - }; -} - -std::vector singlePlacementRow( - const placement::BenchmarkCase& selected_case, - const placement::TrainingConfig& config, - const placement::OverlapMetrics& initial_metrics, - const placement::OverlapMetrics& final_metrics, - const placement::Metrics& normalized_metrics, - const placement::TrainingResult& training_result, - bool passed, - const std::filesystem::path& visualization_path) { - return { - "single", - std::to_string(selected_case.test_id), - std::to_string(selected_case.seed), - deviceTypeName(config.device), - std::to_string(selected_case.num_macros), - std::to_string(selected_case.num_std_cells), - std::to_string(normalized_metrics.total_cells), - std::to_string(normalized_metrics.num_nets), - std::to_string(initial_metrics.overlap_count), - formatDouble(initial_metrics.total_overlap_area), - formatDouble(initial_metrics.max_overlap_area), - formatDouble(initial_metrics.overlap_percentage), - std::to_string(initial_metrics.cells_with_overlap), - boolText(initial_metrics.has_zero_overlap), - std::to_string(final_metrics.overlap_count), - formatDouble(final_metrics.total_overlap_area), - formatDouble(final_metrics.max_overlap_area), - formatDouble(final_metrics.overlap_percentage), - std::to_string(final_metrics.cells_with_overlap), - boolText(final_metrics.has_zero_overlap), - formatDouble(normalized_metrics.overlap_ratio), - formatDouble(normalized_metrics.normalized_wl), - std::to_string(normalized_metrics.num_cells_with_overlaps), - std::to_string(normalized_metrics.total_cells), - std::to_string(normalized_metrics.num_nets), - boolText(passed), - boolText(training_result.stopped_early), - training_result.stop_reason, - std::to_string(training_result.best_epoch), - std::to_string(config.num_epochs), - boolText(config.early_stop_enabled), - std::to_string(config.early_stop_patience), - formatDouble(config.early_stop_min_delta), - formatDouble(config.early_stop_overlap_threshold), - std::to_string(config.early_stop_zero_overlap_patience), - visualization_path.string(), - }; -} - -std::vector singlePlacementJsonFields( - const placement::BenchmarkCase& selected_case, - const placement::TrainingConfig& config, - const placement::OverlapMetrics& initial_metrics, - const placement::OverlapMetrics& final_metrics, - const placement::Metrics& normalized_metrics, - const placement::TrainingResult& training_result, - bool passed, - const std::filesystem::path& visualization_path) { - return { - {"run_type", jsonString("single")}, - {"test_case_id", std::to_string(selected_case.test_id)}, - {"seed", std::to_string(selected_case.seed)}, - {"device", jsonString(deviceTypeName(config.device))}, - {"num_macros", std::to_string(selected_case.num_macros)}, - {"num_std_cells", std::to_string(selected_case.num_std_cells)}, - {"total_cells", std::to_string(normalized_metrics.total_cells)}, - {"num_nets", std::to_string(normalized_metrics.num_nets)}, - {"initial_overlap_count", - std::to_string(initial_metrics.overlap_count)}, - {"initial_total_overlap_area", - jsonDouble(initial_metrics.total_overlap_area)}, - {"initial_max_overlap_area", - jsonDouble(initial_metrics.max_overlap_area)}, - {"initial_overlap_percentage", - jsonDouble(initial_metrics.overlap_percentage)}, - {"initial_cells_with_overlap", - std::to_string(initial_metrics.cells_with_overlap)}, - {"initial_has_zero_overlap", - jsonBool(initial_metrics.has_zero_overlap)}, - {"final_overlap_count", std::to_string(final_metrics.overlap_count)}, - {"final_total_overlap_area", - jsonDouble(final_metrics.total_overlap_area)}, - {"final_max_overlap_area", jsonDouble(final_metrics.max_overlap_area)}, - {"final_overlap_percentage", - jsonDouble(final_metrics.overlap_percentage)}, - {"final_cells_with_overlap", - std::to_string(final_metrics.cells_with_overlap)}, - {"final_has_zero_overlap", jsonBool(final_metrics.has_zero_overlap)}, - {"normalized_overlap_ratio", - jsonDouble(normalized_metrics.overlap_ratio)}, - {"normalized_wl", jsonDouble(normalized_metrics.normalized_wl)}, - {"normalized_num_cells_with_overlaps", - std::to_string(normalized_metrics.num_cells_with_overlaps)}, - {"normalized_total_cells", - std::to_string(normalized_metrics.total_cells)}, - {"normalized_num_nets", std::to_string(normalized_metrics.num_nets)}, - {"passed", jsonBool(passed)}, - {"stopped_early", jsonBool(training_result.stopped_early)}, - {"stop_reason", jsonString(training_result.stop_reason)}, - {"best_epoch", std::to_string(training_result.best_epoch)}, - {"num_epochs", std::to_string(config.num_epochs)}, - {"early_stop_enabled", jsonBool(config.early_stop_enabled)}, - {"early_stop_patience", std::to_string(config.early_stop_patience)}, - {"early_stop_min_delta", jsonDouble(config.early_stop_min_delta)}, - {"early_stop_overlap_threshold", - jsonDouble(config.early_stop_overlap_threshold)}, - {"early_stop_zero_overlap_patience", - std::to_string(config.early_stop_zero_overlap_patience)}, - {"visualization_path", jsonString(visualization_path.string())}, - }; -} - -void writeSinglePlacementArtifacts( - const CliOptions& options, - const placement::BenchmarkCase& selected_case, - const placement::TrainingConfig& config, - const placement::OverlapMetrics& initial_metrics, - const placement::OverlapMetrics& final_metrics, - const placement::Metrics& normalized_metrics, - const placement::TrainingResult& training_result, - bool passed) { - const std::filesystem::path visualization_path = - outputFilePath(options, "placement_result.svg"); - placement::plotPlacement( - training_result.initial_cell_features, - training_result.final_cell_features, - visualization_path); - - writeCsvFile( - outputFilePath(options, "placement_result_summary.csv"), - singlePlacementHeader(), - {singlePlacementRow( - selected_case, - config, - initial_metrics, - final_metrics, - normalized_metrics, - training_result, - passed, - visualization_path)}); - - std::ostringstream json; - appendJsonObject( - json, - singlePlacementJsonFields( - selected_case, - config, - initial_metrics, - final_metrics, - normalized_metrics, - training_result, - passed, - visualization_path), - 0); - json << "\n"; - writeTextFile(outputFilePath(options, "placement_result_summary.json"), json.str()); -} - -void writeBenchmarkArtifacts( - const CliOptions& options, - const placement::BenchmarkSummary& summary) { - std::vector> case_rows; - case_rows.reserve(summary.results.size()); - for (const placement::BenchmarkResult& result : summary.results) { - case_rows.push_back(benchmarkResultRow(result)); - } - writeCsvFile( - outputFilePath(options, "placement_benchmark_cases.csv"), - benchmarkResultHeader(), - case_rows); - - writeCsvFile( - outputFilePath(options, "placement_benchmark_summary.csv"), - {"total_cases", - "average_overlap", - "average_wirelength", - "total_elapsed_seconds", - "passed_count", - "failed_count"}, - {{std::to_string(summary.results.size()), - formatDouble(summary.average_overlap), - formatDouble(summary.average_wirelength), - formatDouble(summary.total_elapsed_seconds), - std::to_string(summary.passed_count), - std::to_string(summary.failed_count)}}); - - std::ostringstream json; - json << "{\n"; - appendJsonField( - json, - 2, - "total_cases", - std::to_string(summary.results.size()), - true); - appendJsonField( - json, - 2, - "average_overlap", - jsonDouble(summary.average_overlap), - true); - appendJsonField( - json, - 2, - "average_wirelength", - jsonDouble(summary.average_wirelength), - true); - appendJsonField( - json, - 2, - "total_elapsed_seconds", - jsonDouble(summary.total_elapsed_seconds), - true); - appendJsonField( - json, - 2, - "passed_count", - std::to_string(summary.passed_count), - true); - appendJsonField( - json, - 2, - "failed_count", - std::to_string(summary.failed_count), - true); - json << " \"cases\": [\n"; - for (std::size_t index = 0; index < summary.results.size(); ++index) { - appendJsonObject(json, benchmarkResultJsonFields(summary.results[index]), 4); - if (index + 1 < summary.results.size()) { - json << ","; - } - json << "\n"; - } - json << " ]\n"; - json << "}\n"; - writeTextFile(outputFilePath(options, "placement_benchmark_summary.json"), json.str()); -} - -void printRule(char c = '=') { - std::cout << std::string(70, c) << "\n"; -} - -void printTrainingConfig(const placement::TrainingConfig& config) { - std::cout << "Using hyperparameters:\n"; - std::cout << " num_epochs: " << config.num_epochs << "\n"; - std::cout << " lr: " << config.lr << "\n"; - std::cout << " lambda_wirelength: " << config.lambda_wirelength << "\n"; - std::cout << " lambda_overlap: " << config.lambda_overlap << "\n"; - std::cout << " scheduler: " << config.scheduler_name << "\n"; - std::cout << " scheduler_patience: " << config.scheduler_patience << "\n"; - std::cout << " scheduler_factor: " << config.scheduler_factor << "\n"; - std::cout << " scheduler_eta_min: " << config.scheduler_eta_min << "\n"; - std::cout << " scheduler_step_size: " << config.scheduler_step_size << "\n"; - std::cout << " scheduler_gamma: " << config.scheduler_gamma << "\n"; - std::cout << " track_overlap_metrics: " - << (config.track_overlap_metrics ? "true" : "false") << "\n"; - std::cout << " early_stop_enabled: " - << (config.early_stop_enabled ? "true" : "false") << "\n"; - std::cout << " early_stop_patience: " << config.early_stop_patience << "\n"; - std::cout << " early_stop_min_delta: " << config.early_stop_min_delta << "\n"; - std::cout << " early_stop_overlap_threshold: " - << config.early_stop_overlap_threshold << "\n"; - std::cout << " early_stop_zero_overlap_patience: " - << config.early_stop_zero_overlap_patience << "\n"; -} - -void printBenchmarkResult(const placement::BenchmarkResult& result) { - const char* status = result.passed ? "PASS" : "FAIL"; - std::cout << "Completed test " << result.test_id << ":\n"; - std::cout << " Device: " << deviceTypeName(result.device) << "\n"; - std::cout << " Overlap Ratio: " << std::fixed << std::setprecision(4) - << result.overlap_ratio << " (" << result.num_cells_with_overlaps - << "/" << result.total_cells << " cells)\n"; - std::cout << " Normalized WL: " << std::fixed << std::setprecision(4) - << result.normalized_wl << "\n"; - std::cout << " Time: " << std::fixed << std::setprecision(2) - << result.elapsed_seconds << "s\n"; - std::cout << " Status: " << status << "\n\n"; -} - -int runBenchmark( - const CliOptions& options, - const placement::TrainingConfig& config) { - printRule(); - std::cout << "PLACEMENT CHALLENGE TEST SUITE\n"; - printRule(); - std::cout << "\nRunning " << placement::activeBenchmarkCases().size() - << " active test cases serially.\n"; - printTrainingConfig(config); - std::cout << "\n"; - - int case_index = 1; - for (const placement::BenchmarkCase& test_case : - placement::activeBenchmarkCases()) { - const char* size_category = - test_case.num_std_cells <= 30 - ? "Small" - : test_case.num_std_cells <= 100 ? "Medium" : "Large"; - std::cout << "Test " << case_index++ << "/" - << placement::activeBenchmarkCases().size() << ": " - << size_category << " (" << test_case.num_macros - << " macros, " << test_case.num_std_cells << " std cells)\n"; - std::cout << " Seed: " << test_case.seed << "\n"; - } - std::cout << "\n"; - - const placement::BenchmarkSummary summary = - placement::runActiveBenchmarkCases(config); - for (const placement::BenchmarkResult& result : summary.results) { - printBenchmarkResult(result); - } - - printRule(); - std::cout << "FINAL RESULTS\n"; - printRule(); - std::cout << "Average Overlap: " << std::fixed << std::setprecision(4) - << summary.average_overlap << "\n"; - std::cout << "Average Wirelength: " << std::fixed << std::setprecision(4) - << summary.average_wirelength << "\n"; - std::cout << "Total Runtime: " << std::fixed << std::setprecision(2) - << summary.total_elapsed_seconds << "s\n"; - std::cout << "Passed: " << summary.passed_count << "\n"; - std::cout << "Failed: " << summary.failed_count << "\n"; - if (options.write_output_files) { - writeBenchmarkArtifacts(options, summary); - } - return 0; -} - -int runSinglePlacement( - const CliOptions& options, - const placement::TrainingConfig& config) { - placement::BenchmarkCase selected_case{ - 0, - options.num_macros, - options.num_std_cells, - options.seed, - }; - if (options.test_case_id != 0) { - const std::optional test_case = - findBenchmarkCase(options.test_case_id); - if (!test_case.has_value()) { - throw std::invalid_argument( - "Unknown benchmark test case id: " + - std::to_string(options.test_case_id)); - } - selected_case = *test_case; - } - - printRule(); - std::cout << "VLSI CELL PLACEMENT OPTIMIZATION\n"; - printRule(); - std::cout << "\nGenerating placement problem:\n"; - if (selected_case.test_id != 0) { - std::cout << " - benchmark test case: " << selected_case.test_id << "\n"; - } - std::cout << " - " << selected_case.num_macros << " macros\n"; - std::cout << " - " << selected_case.num_std_cells << " standard cells\n"; - std::cout << " - seed: " << selected_case.seed << "\n"; - std::cout << " - device: " << deviceTypeName(config.device) << "\n"; - - seedTorch(selected_case.seed); - const torch::Device device(config.device); - placement::PlacementProblem problem = placement::generatePlacementInput( - selected_case.num_macros, - selected_case.num_std_cells, - device); - placement::initializeCellPositions(problem.cell_features); - - std::cout << "\n"; - printRule(); - std::cout << "INITIAL STATE\n"; - printRule(); - const placement::OverlapMetrics initial_metrics = - placement::calculateOverlapMetrics(problem.cell_features); - std::cout << "Overlap count: " << initial_metrics.overlap_count << "\n"; - std::cout << "Total overlap area: " << std::fixed << std::setprecision(2) - << initial_metrics.total_overlap_area << "\n"; - std::cout << "Max overlap area: " << std::fixed << std::setprecision(2) - << initial_metrics.max_overlap_area << "\n"; - std::cout << "Overlap percentage: " << std::fixed << std::setprecision(2) - << initial_metrics.overlap_percentage << "%\n"; - - std::cout << "\n"; - printRule(); - std::cout << "RUNNING OPTIMIZATION\n"; - printRule(); - placement::TrainingResult training_result = placement::trainPlacement( - problem.cell_features, - problem.pin_features, - problem.edge_list, - config); - - std::cout << "\n"; - printRule(); - std::cout << "FINAL RESULTS\n"; - printRule(); - const placement::OverlapMetrics final_overlap_metrics = - placement::calculateOverlapMetrics(training_result.final_cell_features); - std::cout << "Overlap count (pairs): " - << final_overlap_metrics.overlap_count << "\n"; - std::cout << "Total overlap area: " << std::fixed << std::setprecision(2) - << final_overlap_metrics.total_overlap_area << "\n"; - std::cout << "Max overlap area: " << std::fixed << std::setprecision(2) - << final_overlap_metrics.max_overlap_area << "\n"; - - std::cout << "\n"; - printRule('-'); - std::cout << "TEST SUITE METRICS\n"; - printRule('-'); - const placement::Metrics normalized_metrics = - placement::calculateNormalizedMetrics( - training_result.final_cell_features, - problem.pin_features, - problem.edge_list); - std::cout << "Overlap Ratio: " << std::fixed << std::setprecision(4) - << normalized_metrics.overlap_ratio << " (" - << normalized_metrics.num_cells_with_overlaps << "/" - << normalized_metrics.total_cells << " cells)\n"; - std::cout << "Normalized Wirelength: " << std::fixed << std::setprecision(4) - << normalized_metrics.normalized_wl << "\n"; - if (training_result.stopped_early) { - std::cout << "Stopped Early: " << training_result.stop_reason - << " at best epoch " << training_result.best_epoch << "\n"; - } - - std::cout << "\n"; - printRule(); - std::cout << "SUCCESS CRITERIA\n"; - printRule(); - const bool passed = normalized_metrics.num_cells_with_overlaps == 0; - if (passed) { - std::cout << "PASS: No overlapping cells.\n"; - } else { - std::cout << "FAIL: Overlaps remain in " - << normalized_metrics.num_cells_with_overlaps << " cells.\n"; - } - - if (options.write_output_files) { - writeSinglePlacementArtifacts( - options, - selected_case, - config, - initial_metrics, - final_overlap_metrics, - normalized_metrics, - training_result, - passed); - } - - return 0; -} - -void configureCli( - CLI::App& app, - CliOptions& options, - placement::TrainingConfig& config) { - app.add_flag( - "--benchmark", - options.run_benchmark, - "Run the active benchmark suite instead of a single placement."); - app.add_option( - "--device", - options.device, - "Device to run on: auto, cpu, cuda, or mps.") - ->check(CLI::IsMember({"auto", "cpu", "cuda", "mps"})); - app.add_option( - "--test-case-id", - options.test_case_id, - "Optional benchmark test case id for a single placement run."); - app.add_option( - "--num-macros", - options.num_macros, - "Number of macro cells for a single placement run."); - app.add_option( - "--num-std-cells", - options.num_std_cells, - "Number of standard cells for a single placement run."); - app.add_option("--seed", options.seed, "Random seed for a single placement run."); - app.add_flag( - "--write-output-files", - options.write_output_files, - "Write notebook-friendly CSV and JSON output artifacts."); - app.add_option( - "--output-dir", - options.output_dir, - "Directory for output artifacts when --write-output-files is set."); - - app.add_option( - "--num-epochs", - config.num_epochs, - "Number of optimization epochs."); - app.add_option("--lr", config.lr, "Learning rate for Adam."); - app.add_option( - "--lambda-wirelength", - config.lambda_wirelength, - "Weight applied to the wirelength loss."); - app.add_option( - "--lambda-overlap", - config.lambda_overlap, - "Weight applied to the overlap loss."); - app.add_option("--scheduler", config.scheduler_name, "Learning-rate scheduler.") - ->check(CLI::IsMember( - {"plateau", "cosine", "step", "exponential", "none"})); - app.add_option( - "--scheduler-patience", - config.scheduler_patience, - "Patience for ReduceLROnPlateau."); - app.add_option( - "--scheduler-factor", - config.scheduler_factor, - "Decay factor for ReduceLROnPlateau."); - app.add_option( - "--scheduler-eta-min", - config.scheduler_eta_min, - "Minimum learning rate for cosine annealing."); - app.add_option( - "--scheduler-step-size", - config.scheduler_step_size, - "Step size in epochs for StepLR."); - app.add_option( - "--scheduler-gamma", - config.scheduler_gamma, - "Gamma decay for step and exponential schedulers."); - app.add_flag( - "--track-overlap-metrics", - config.track_overlap_metrics, - "Compute overlap metrics every epoch."); - app.add_flag( - "--no-early-stop", - [&config](int64_t count) { - if (count > 0) { - config.early_stop_enabled = false; - } - }, - "Disable overlap-first early stopping."); - app.add_option( - "--early-stop-patience", - config.early_stop_patience, - "Patience before stopping when overlap stops improving."); - app.add_option( - "--early-stop-min-delta", - config.early_stop_min_delta, - "Minimum improvement required to reset early-stop patience."); - app.add_option( - "--early-stop-overlap-threshold", - config.early_stop_overlap_threshold, - "Overlap threshold treated as effectively zero."); - app.add_option( - "--early-stop-zero-overlap-patience", - config.early_stop_zero_overlap_patience, - "Extra patience after zero overlap is reached."); - app.add_flag("--quiet", [&config](int64_t count) { - if (count > 0) { - config.verbose = false; - } - }, "Suppress per-epoch output for a single placement run."); - app.add_option( - "--log-interval", - config.log_interval, - "Epoch interval for verbose training logs."); -} - -void validateOptions( - const CliOptions& options, - const placement::TrainingConfig& config) { - if (options.num_macros < 0 || options.num_std_cells < 0) { - throw std::invalid_argument("Cell counts must be nonnegative"); - } - if (options.num_macros + options.num_std_cells < 0) { - throw std::invalid_argument("Cell counts overflowed"); - } - if (config.num_epochs < 0) { - throw std::invalid_argument("Number of epochs must be nonnegative"); - } - if (config.lr <= 0.0) { - throw std::invalid_argument("Learning rate must be positive"); - } - if (config.scheduler_patience < 0) { - throw std::invalid_argument("Scheduler patience must be nonnegative"); - } - if (config.scheduler_factor <= 0.0) { - throw std::invalid_argument("Scheduler factor must be positive"); - } - if (config.scheduler_step_size <= 0) { - throw std::invalid_argument("Scheduler step size must be positive"); - } - if (config.early_stop_patience <= 0 || - config.early_stop_zero_overlap_patience <= 0) { - throw std::invalid_argument("Early-stop patience values must be positive"); - } -} - -} // namespace - -int main(int argc, char** argv) { - CliOptions options; - placement::TrainingConfig config; - config.log_interval = 200; - - CLI::App app{"Placement C++ runner"}; - configureCli(app, options, config); - CLI11_PARSE(app, argc, argv); - - try { - validateOptions(options, config); - config.device = resolveDeviceType(options.device); - - if (options.run_benchmark) { - config.verbose = false; - return runBenchmark(options, config); - } - return runSinglePlacement(options, config); - } catch (const c10::Error& error) { - std::cerr << "LibTorch error: " << error.what_without_backtrace() << "\n"; - } catch (const std::exception& error) { - std::cerr << "Error: " << error.what() << "\n"; - } - return 1; -} From b8fc70f78fa2d4c3f39beb8a953cbbd6302d8744 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 14:08:29 -0700 Subject: [PATCH 43/48] rename files --- cpp/placement.cpp | 991 ++++++++++++++++++++++++++++++++++++++++++++++ cpp/test.cpp | 289 ++++++++++++++ 2 files changed, 1280 insertions(+) create mode 100644 cpp/placement.cpp create mode 100644 cpp/test.cpp diff --git a/cpp/placement.cpp b/cpp/placement.cpp new file mode 100644 index 0000000..6aabbc1 --- /dev/null +++ b/cpp/placement.cpp @@ -0,0 +1,991 @@ +#include "placement/benchmark.h" +#include "placement/generation.h" +#include "placement/metrics.h" +#include "placement/training.h" +#include "placement/types.h" +#include "placement/visualization.h" + +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +namespace { + +struct CliOptions { + bool run_benchmark = false; + std::string device = "auto"; + int test_case_id = 0; + int num_macros = 3; + int num_std_cells = 10; + int seed = 42; + bool write_output_files = false; + std::string output_dir = "."; +}; + +std::string deviceTypeName(c10::DeviceType device) { + switch (device) { + case c10::DeviceType::CPU: + return "cpu"; + case c10::DeviceType::CUDA: + return "cuda"; + case c10::DeviceType::MPS: + return "mps"; + default: + return "unknown"; + } +} + +c10::DeviceType resolveDeviceType(const std::string& device) { + if (device == "auto") { + if (torch::cuda::is_available()) { + return torch::kCUDA; + } + if (torch::mps::is_available()) { + return torch::kMPS; + } + return torch::kCPU; + } + if (device == "cpu") { + return torch::kCPU; + } + if (device == "cuda") { + if (!torch::cuda::is_available()) { + throw std::invalid_argument("CUDA device requested but unavailable"); + } + return torch::kCUDA; + } + if (device == "mps") { + if (!torch::mps::is_available()) { + throw std::invalid_argument("MPS device requested but unavailable"); + } + return torch::kMPS; + } + throw std::invalid_argument("Unsupported device: " + device); +} + +void seedTorch(int seed) { + torch::manual_seed(static_cast(seed)); + if (torch::cuda::is_available()) { + torch::cuda::manual_seed_all(static_cast(seed)); + } + if (torch::mps::is_available()) { + torch::mps::manual_seed(static_cast(seed)); + } +} + +std::vector allKnownBenchmarkCases() { + std::vector cases( + placement::activeBenchmarkCases().begin(), + placement::activeBenchmarkCases().end()); + cases.push_back({11, 10, 10000, 1011}); + cases.push_back({12, 10, 100000, 1012}); + return cases; +} + +std::optional findBenchmarkCase(int test_case_id) { + for (const placement::BenchmarkCase& test_case : allKnownBenchmarkCases()) { + if (test_case.test_id == test_case_id) { + return test_case; + } + } + return std::nullopt; +} + +std::string formatDouble(double value) { + std::ostringstream stream; + stream << std::setprecision(17) << value; + return stream.str(); +} + +std::string boolText(bool value) { + return value ? "true" : "false"; +} + +std::string csvEscape(std::string_view value) { + if (value.find_first_of("\",\n\r") == std::string_view::npos) { + return std::string(value); + } + + std::string escaped; + escaped.reserve(value.size() + 2); + escaped.push_back('"'); + for (char ch : value) { + if (ch == '"') { + escaped.push_back('"'); + } + escaped.push_back(ch); + } + escaped.push_back('"'); + return escaped; +} + +std::string jsonEscape(std::string_view value) { + std::ostringstream escaped; + for (unsigned char ch : value) { + switch (ch) { + case '"': + escaped << "\\\""; + break; + case '\\': + escaped << "\\\\"; + break; + case '\b': + escaped << "\\b"; + break; + case '\f': + escaped << "\\f"; + break; + case '\n': + escaped << "\\n"; + break; + case '\r': + escaped << "\\r"; + break; + case '\t': + escaped << "\\t"; + break; + default: + if (ch < 0x20) { + escaped << "\\u" << std::hex << std::setw(4) + << std::setfill('0') << static_cast(ch) + << std::dec << std::setfill(' '); + } else { + escaped << static_cast(ch); + } + break; + } + } + return escaped.str(); +} + +std::string jsonString(std::string_view value) { + std::string quoted = "\""; + quoted += jsonEscape(value); + quoted += "\""; + return quoted; +} + +std::string jsonDouble(double value) { + if (!std::isfinite(value)) { + return "null"; + } + return formatDouble(value); +} + +std::string jsonBool(bool value) { + return boolText(value); +} + +std::filesystem::path outputFilePath( + const CliOptions& options, + std::string_view file_name) { + const std::filesystem::path output_dir = + options.output_dir.empty() ? std::filesystem::path(".") + : std::filesystem::path(options.output_dir); + return output_dir / std::string(file_name); +} + +void writeTextFile( + const std::filesystem::path& file_path, + const std::string& contents) { + const std::filesystem::path parent_path = file_path.parent_path(); + if (!parent_path.empty()) { + std::filesystem::create_directories(parent_path); + } + + std::ofstream output(file_path, std::ios::out | std::ios::trunc); + if (!output) { + throw std::runtime_error( + "Unable to open output file: " + file_path.string()); + } + output << contents; + if (!output) { + throw std::runtime_error( + "Unable to write output file: " + file_path.string()); + } +} + +void appendCsvRow( + std::ostringstream& output, + const std::vector& fields) { + for (std::size_t index = 0; index < fields.size(); ++index) { + if (index > 0) { + output << ","; + } + output << csvEscape(fields[index]); + } + output << "\n"; +} + +void writeCsvFile( + const std::filesystem::path& file_path, + const std::vector& header, + const std::vector>& rows) { + std::ostringstream output; + appendCsvRow(output, header); + for (const std::vector& row : rows) { + appendCsvRow(output, row); + } + writeTextFile(file_path, output.str()); +} + +void appendJsonField( + std::ostringstream& output, + int indent, + std::string_view key, + const std::string& value, + bool trailing_comma) { + output << std::string(indent, ' ') << jsonString(key) << ": " << value; + if (trailing_comma) { + output << ","; + } + output << "\n"; +} + +using JsonField = std::pair; + +void appendJsonObject( + std::ostringstream& output, + const std::vector& fields, + int indent) { + output << std::string(indent, ' ') << "{\n"; + for (std::size_t index = 0; index < fields.size(); ++index) { + appendJsonField( + output, + indent + 2, + fields[index].first, + fields[index].second, + index + 1 < fields.size()); + } + output << std::string(indent, ' ') << "}"; +} + +std::vector benchmarkResultHeader() { + return { + "test_id", + "num_macros", + "num_std_cells", + "total_cells", + "num_nets", + "seed", + "device", + "elapsed_seconds", + "num_cells_with_overlaps", + "overlap_ratio", + "normalized_wl", + "passed", + }; +} + +std::vector benchmarkResultRow( + const placement::BenchmarkResult& result) { + return { + std::to_string(result.test_id), + std::to_string(result.num_macros), + std::to_string(result.num_std_cells), + std::to_string(result.total_cells), + std::to_string(result.num_nets), + std::to_string(result.seed), + deviceTypeName(result.device), + formatDouble(result.elapsed_seconds), + std::to_string(result.num_cells_with_overlaps), + formatDouble(result.overlap_ratio), + formatDouble(result.normalized_wl), + boolText(result.passed), + }; +} + +std::vector benchmarkResultJsonFields( + const placement::BenchmarkResult& result) { + return { + {"test_id", std::to_string(result.test_id)}, + {"num_macros", std::to_string(result.num_macros)}, + {"num_std_cells", std::to_string(result.num_std_cells)}, + {"total_cells", std::to_string(result.total_cells)}, + {"num_nets", std::to_string(result.num_nets)}, + {"seed", std::to_string(result.seed)}, + {"device", jsonString(deviceTypeName(result.device))}, + {"elapsed_seconds", jsonDouble(result.elapsed_seconds)}, + {"num_cells_with_overlaps", + std::to_string(result.num_cells_with_overlaps)}, + {"overlap_ratio", jsonDouble(result.overlap_ratio)}, + {"normalized_wl", jsonDouble(result.normalized_wl)}, + {"passed", jsonBool(result.passed)}, + }; +} + +std::vector singlePlacementHeader() { + return { + "run_type", + "test_case_id", + "seed", + "device", + "num_macros", + "num_std_cells", + "total_cells", + "num_nets", + "initial_overlap_count", + "initial_total_overlap_area", + "initial_max_overlap_area", + "initial_overlap_percentage", + "initial_cells_with_overlap", + "initial_has_zero_overlap", + "final_overlap_count", + "final_total_overlap_area", + "final_max_overlap_area", + "final_overlap_percentage", + "final_cells_with_overlap", + "final_has_zero_overlap", + "normalized_overlap_ratio", + "normalized_wl", + "normalized_num_cells_with_overlaps", + "normalized_total_cells", + "normalized_num_nets", + "passed", + "stopped_early", + "stop_reason", + "best_epoch", + "num_epochs", + "early_stop_enabled", + "early_stop_patience", + "early_stop_min_delta", + "early_stop_overlap_threshold", + "early_stop_zero_overlap_patience", + "visualization_path", + }; +} + +std::vector singlePlacementRow( + const placement::BenchmarkCase& selected_case, + const placement::TrainingConfig& config, + const placement::OverlapMetrics& initial_metrics, + const placement::OverlapMetrics& final_metrics, + const placement::Metrics& normalized_metrics, + const placement::TrainingResult& training_result, + bool passed, + const std::filesystem::path& visualization_path) { + return { + "single", + std::to_string(selected_case.test_id), + std::to_string(selected_case.seed), + deviceTypeName(config.device), + std::to_string(selected_case.num_macros), + std::to_string(selected_case.num_std_cells), + std::to_string(normalized_metrics.total_cells), + std::to_string(normalized_metrics.num_nets), + std::to_string(initial_metrics.overlap_count), + formatDouble(initial_metrics.total_overlap_area), + formatDouble(initial_metrics.max_overlap_area), + formatDouble(initial_metrics.overlap_percentage), + std::to_string(initial_metrics.cells_with_overlap), + boolText(initial_metrics.has_zero_overlap), + std::to_string(final_metrics.overlap_count), + formatDouble(final_metrics.total_overlap_area), + formatDouble(final_metrics.max_overlap_area), + formatDouble(final_metrics.overlap_percentage), + std::to_string(final_metrics.cells_with_overlap), + boolText(final_metrics.has_zero_overlap), + formatDouble(normalized_metrics.overlap_ratio), + formatDouble(normalized_metrics.normalized_wl), + std::to_string(normalized_metrics.num_cells_with_overlaps), + std::to_string(normalized_metrics.total_cells), + std::to_string(normalized_metrics.num_nets), + boolText(passed), + boolText(training_result.stopped_early), + training_result.stop_reason, + std::to_string(training_result.best_epoch), + std::to_string(config.num_epochs), + boolText(config.early_stop_enabled), + std::to_string(config.early_stop_patience), + formatDouble(config.early_stop_min_delta), + formatDouble(config.early_stop_overlap_threshold), + std::to_string(config.early_stop_zero_overlap_patience), + visualization_path.string(), + }; +} + +std::vector singlePlacementJsonFields( + const placement::BenchmarkCase& selected_case, + const placement::TrainingConfig& config, + const placement::OverlapMetrics& initial_metrics, + const placement::OverlapMetrics& final_metrics, + const placement::Metrics& normalized_metrics, + const placement::TrainingResult& training_result, + bool passed, + const std::filesystem::path& visualization_path) { + return { + {"run_type", jsonString("single")}, + {"test_case_id", std::to_string(selected_case.test_id)}, + {"seed", std::to_string(selected_case.seed)}, + {"device", jsonString(deviceTypeName(config.device))}, + {"num_macros", std::to_string(selected_case.num_macros)}, + {"num_std_cells", std::to_string(selected_case.num_std_cells)}, + {"total_cells", std::to_string(normalized_metrics.total_cells)}, + {"num_nets", std::to_string(normalized_metrics.num_nets)}, + {"initial_overlap_count", + std::to_string(initial_metrics.overlap_count)}, + {"initial_total_overlap_area", + jsonDouble(initial_metrics.total_overlap_area)}, + {"initial_max_overlap_area", + jsonDouble(initial_metrics.max_overlap_area)}, + {"initial_overlap_percentage", + jsonDouble(initial_metrics.overlap_percentage)}, + {"initial_cells_with_overlap", + std::to_string(initial_metrics.cells_with_overlap)}, + {"initial_has_zero_overlap", + jsonBool(initial_metrics.has_zero_overlap)}, + {"final_overlap_count", std::to_string(final_metrics.overlap_count)}, + {"final_total_overlap_area", + jsonDouble(final_metrics.total_overlap_area)}, + {"final_max_overlap_area", jsonDouble(final_metrics.max_overlap_area)}, + {"final_overlap_percentage", + jsonDouble(final_metrics.overlap_percentage)}, + {"final_cells_with_overlap", + std::to_string(final_metrics.cells_with_overlap)}, + {"final_has_zero_overlap", jsonBool(final_metrics.has_zero_overlap)}, + {"normalized_overlap_ratio", + jsonDouble(normalized_metrics.overlap_ratio)}, + {"normalized_wl", jsonDouble(normalized_metrics.normalized_wl)}, + {"normalized_num_cells_with_overlaps", + std::to_string(normalized_metrics.num_cells_with_overlaps)}, + {"normalized_total_cells", + std::to_string(normalized_metrics.total_cells)}, + {"normalized_num_nets", std::to_string(normalized_metrics.num_nets)}, + {"passed", jsonBool(passed)}, + {"stopped_early", jsonBool(training_result.stopped_early)}, + {"stop_reason", jsonString(training_result.stop_reason)}, + {"best_epoch", std::to_string(training_result.best_epoch)}, + {"num_epochs", std::to_string(config.num_epochs)}, + {"early_stop_enabled", jsonBool(config.early_stop_enabled)}, + {"early_stop_patience", std::to_string(config.early_stop_patience)}, + {"early_stop_min_delta", jsonDouble(config.early_stop_min_delta)}, + {"early_stop_overlap_threshold", + jsonDouble(config.early_stop_overlap_threshold)}, + {"early_stop_zero_overlap_patience", + std::to_string(config.early_stop_zero_overlap_patience)}, + {"visualization_path", jsonString(visualization_path.string())}, + }; +} + +void writeSinglePlacementArtifacts( + const CliOptions& options, + const placement::BenchmarkCase& selected_case, + const placement::TrainingConfig& config, + const placement::OverlapMetrics& initial_metrics, + const placement::OverlapMetrics& final_metrics, + const placement::Metrics& normalized_metrics, + const placement::TrainingResult& training_result, + bool passed) { + const std::filesystem::path visualization_path = + outputFilePath(options, "placement_result.svg"); + placement::plotPlacement( + training_result.initial_cell_features, + training_result.final_cell_features, + visualization_path); + + writeCsvFile( + outputFilePath(options, "placement_result_summary.csv"), + singlePlacementHeader(), + {singlePlacementRow( + selected_case, + config, + initial_metrics, + final_metrics, + normalized_metrics, + training_result, + passed, + visualization_path)}); + + std::ostringstream json; + appendJsonObject( + json, + singlePlacementJsonFields( + selected_case, + config, + initial_metrics, + final_metrics, + normalized_metrics, + training_result, + passed, + visualization_path), + 0); + json << "\n"; + writeTextFile(outputFilePath(options, "placement_result_summary.json"), json.str()); +} + +void writeBenchmarkArtifacts( + const CliOptions& options, + const placement::BenchmarkSummary& summary) { + std::vector> case_rows; + case_rows.reserve(summary.results.size()); + for (const placement::BenchmarkResult& result : summary.results) { + case_rows.push_back(benchmarkResultRow(result)); + } + writeCsvFile( + outputFilePath(options, "placement_benchmark_cases.csv"), + benchmarkResultHeader(), + case_rows); + + writeCsvFile( + outputFilePath(options, "placement_benchmark_summary.csv"), + {"total_cases", + "average_overlap", + "average_wirelength", + "total_elapsed_seconds", + "passed_count", + "failed_count"}, + {{std::to_string(summary.results.size()), + formatDouble(summary.average_overlap), + formatDouble(summary.average_wirelength), + formatDouble(summary.total_elapsed_seconds), + std::to_string(summary.passed_count), + std::to_string(summary.failed_count)}}); + + std::ostringstream json; + json << "{\n"; + appendJsonField( + json, + 2, + "total_cases", + std::to_string(summary.results.size()), + true); + appendJsonField( + json, + 2, + "average_overlap", + jsonDouble(summary.average_overlap), + true); + appendJsonField( + json, + 2, + "average_wirelength", + jsonDouble(summary.average_wirelength), + true); + appendJsonField( + json, + 2, + "total_elapsed_seconds", + jsonDouble(summary.total_elapsed_seconds), + true); + appendJsonField( + json, + 2, + "passed_count", + std::to_string(summary.passed_count), + true); + appendJsonField( + json, + 2, + "failed_count", + std::to_string(summary.failed_count), + true); + json << " \"cases\": [\n"; + for (std::size_t index = 0; index < summary.results.size(); ++index) { + appendJsonObject(json, benchmarkResultJsonFields(summary.results[index]), 4); + if (index + 1 < summary.results.size()) { + json << ","; + } + json << "\n"; + } + json << " ]\n"; + json << "}\n"; + writeTextFile(outputFilePath(options, "placement_benchmark_summary.json"), json.str()); +} + +void printRule(char c = '=') { + std::cout << std::string(70, c) << "\n"; +} + +void printTrainingConfig(const placement::TrainingConfig& config) { + std::cout << "Using hyperparameters:\n"; + std::cout << " num_epochs: " << config.num_epochs << "\n"; + std::cout << " lr: " << config.lr << "\n"; + std::cout << " lambda_wirelength: " << config.lambda_wirelength << "\n"; + std::cout << " lambda_overlap: " << config.lambda_overlap << "\n"; + std::cout << " scheduler: " << config.scheduler_name << "\n"; + std::cout << " scheduler_patience: " << config.scheduler_patience << "\n"; + std::cout << " scheduler_factor: " << config.scheduler_factor << "\n"; + std::cout << " scheduler_eta_min: " << config.scheduler_eta_min << "\n"; + std::cout << " scheduler_step_size: " << config.scheduler_step_size << "\n"; + std::cout << " scheduler_gamma: " << config.scheduler_gamma << "\n"; + std::cout << " track_overlap_metrics: " + << (config.track_overlap_metrics ? "true" : "false") << "\n"; + std::cout << " early_stop_enabled: " + << (config.early_stop_enabled ? "true" : "false") << "\n"; + std::cout << " early_stop_patience: " << config.early_stop_patience << "\n"; + std::cout << " early_stop_min_delta: " << config.early_stop_min_delta << "\n"; + std::cout << " early_stop_overlap_threshold: " + << config.early_stop_overlap_threshold << "\n"; + std::cout << " early_stop_zero_overlap_patience: " + << config.early_stop_zero_overlap_patience << "\n"; +} + +void printBenchmarkResult(const placement::BenchmarkResult& result) { + const char* status = result.passed ? "PASS" : "FAIL"; + std::cout << "Completed test " << result.test_id << ":\n"; + std::cout << " Device: " << deviceTypeName(result.device) << "\n"; + std::cout << " Overlap Ratio: " << std::fixed << std::setprecision(4) + << result.overlap_ratio << " (" << result.num_cells_with_overlaps + << "/" << result.total_cells << " cells)\n"; + std::cout << " Normalized WL: " << std::fixed << std::setprecision(4) + << result.normalized_wl << "\n"; + std::cout << " Time: " << std::fixed << std::setprecision(2) + << result.elapsed_seconds << "s\n"; + std::cout << " Status: " << status << "\n\n"; +} + +int runBenchmark( + const CliOptions& options, + const placement::TrainingConfig& config) { + printRule(); + std::cout << "PLACEMENT CHALLENGE TEST SUITE\n"; + printRule(); + std::cout << "\nRunning " << placement::activeBenchmarkCases().size() + << " active test cases serially.\n"; + printTrainingConfig(config); + std::cout << "\n"; + + int case_index = 1; + for (const placement::BenchmarkCase& test_case : + placement::activeBenchmarkCases()) { + const char* size_category = + test_case.num_std_cells <= 30 + ? "Small" + : test_case.num_std_cells <= 100 ? "Medium" : "Large"; + std::cout << "Test " << case_index++ << "/" + << placement::activeBenchmarkCases().size() << ": " + << size_category << " (" << test_case.num_macros + << " macros, " << test_case.num_std_cells << " std cells)\n"; + std::cout << " Seed: " << test_case.seed << "\n"; + } + std::cout << "\n"; + + const placement::BenchmarkSummary summary = + placement::runActiveBenchmarkCases(config); + for (const placement::BenchmarkResult& result : summary.results) { + printBenchmarkResult(result); + } + + printRule(); + std::cout << "FINAL RESULTS\n"; + printRule(); + std::cout << "Average Overlap: " << std::fixed << std::setprecision(4) + << summary.average_overlap << "\n"; + std::cout << "Average Wirelength: " << std::fixed << std::setprecision(4) + << summary.average_wirelength << "\n"; + std::cout << "Total Runtime: " << std::fixed << std::setprecision(2) + << summary.total_elapsed_seconds << "s\n"; + std::cout << "Passed: " << summary.passed_count << "\n"; + std::cout << "Failed: " << summary.failed_count << "\n"; + if (options.write_output_files) { + writeBenchmarkArtifacts(options, summary); + } + return 0; +} + +int runSinglePlacement( + const CliOptions& options, + const placement::TrainingConfig& config) { + placement::BenchmarkCase selected_case{ + 0, + options.num_macros, + options.num_std_cells, + options.seed, + }; + if (options.test_case_id != 0) { + const std::optional test_case = + findBenchmarkCase(options.test_case_id); + if (!test_case.has_value()) { + throw std::invalid_argument( + "Unknown benchmark test case id: " + + std::to_string(options.test_case_id)); + } + selected_case = *test_case; + } + + printRule(); + std::cout << "VLSI CELL PLACEMENT OPTIMIZATION\n"; + printRule(); + std::cout << "\nGenerating placement problem:\n"; + if (selected_case.test_id != 0) { + std::cout << " - benchmark test case: " << selected_case.test_id << "\n"; + } + std::cout << " - " << selected_case.num_macros << " macros\n"; + std::cout << " - " << selected_case.num_std_cells << " standard cells\n"; + std::cout << " - seed: " << selected_case.seed << "\n"; + std::cout << " - device: " << deviceTypeName(config.device) << "\n"; + + seedTorch(selected_case.seed); + const torch::Device device(config.device); + placement::PlacementProblem problem = placement::generatePlacementInput( + selected_case.num_macros, + selected_case.num_std_cells, + device); + placement::initializeCellPositions(problem.cell_features); + + std::cout << "\n"; + printRule(); + std::cout << "INITIAL STATE\n"; + printRule(); + const placement::OverlapMetrics initial_metrics = + placement::calculateOverlapMetrics(problem.cell_features); + std::cout << "Overlap count: " << initial_metrics.overlap_count << "\n"; + std::cout << "Total overlap area: " << std::fixed << std::setprecision(2) + << initial_metrics.total_overlap_area << "\n"; + std::cout << "Max overlap area: " << std::fixed << std::setprecision(2) + << initial_metrics.max_overlap_area << "\n"; + std::cout << "Overlap percentage: " << std::fixed << std::setprecision(2) + << initial_metrics.overlap_percentage << "%\n"; + + std::cout << "\n"; + printRule(); + std::cout << "RUNNING OPTIMIZATION\n"; + printRule(); + placement::TrainingResult training_result = placement::trainPlacement( + problem.cell_features, + problem.pin_features, + problem.edge_list, + config); + + std::cout << "\n"; + printRule(); + std::cout << "FINAL RESULTS\n"; + printRule(); + const placement::OverlapMetrics final_overlap_metrics = + placement::calculateOverlapMetrics(training_result.final_cell_features); + std::cout << "Overlap count (pairs): " + << final_overlap_metrics.overlap_count << "\n"; + std::cout << "Total overlap area: " << std::fixed << std::setprecision(2) + << final_overlap_metrics.total_overlap_area << "\n"; + std::cout << "Max overlap area: " << std::fixed << std::setprecision(2) + << final_overlap_metrics.max_overlap_area << "\n"; + + std::cout << "\n"; + printRule('-'); + std::cout << "TEST SUITE METRICS\n"; + printRule('-'); + const placement::Metrics normalized_metrics = + placement::calculateNormalizedMetrics( + training_result.final_cell_features, + problem.pin_features, + problem.edge_list); + std::cout << "Overlap Ratio: " << std::fixed << std::setprecision(4) + << normalized_metrics.overlap_ratio << " (" + << normalized_metrics.num_cells_with_overlaps << "/" + << normalized_metrics.total_cells << " cells)\n"; + std::cout << "Normalized Wirelength: " << std::fixed << std::setprecision(4) + << normalized_metrics.normalized_wl << "\n"; + if (training_result.stopped_early) { + std::cout << "Stopped Early: " << training_result.stop_reason + << " at best epoch " << training_result.best_epoch << "\n"; + } + + std::cout << "\n"; + printRule(); + std::cout << "SUCCESS CRITERIA\n"; + printRule(); + const bool passed = normalized_metrics.num_cells_with_overlaps == 0; + if (passed) { + std::cout << "PASS: No overlapping cells.\n"; + } else { + std::cout << "FAIL: Overlaps remain in " + << normalized_metrics.num_cells_with_overlaps << " cells.\n"; + } + + if (options.write_output_files) { + writeSinglePlacementArtifacts( + options, + selected_case, + config, + initial_metrics, + final_overlap_metrics, + normalized_metrics, + training_result, + passed); + } + + return 0; +} + +void configureCli( + CLI::App& app, + CliOptions& options, + placement::TrainingConfig& config) { + app.add_flag( + "--benchmark", + options.run_benchmark, + "Run the active benchmark suite instead of a single placement."); + app.add_option( + "--device", + options.device, + "Device to run on: auto, cpu, cuda, or mps.") + ->check(CLI::IsMember({"auto", "cpu", "cuda", "mps"})); + app.add_option( + "--test-case-id", + options.test_case_id, + "Optional benchmark test case id for a single placement run."); + app.add_option( + "--num-macros", + options.num_macros, + "Number of macro cells for a single placement run."); + app.add_option( + "--num-std-cells", + options.num_std_cells, + "Number of standard cells for a single placement run."); + app.add_option("--seed", options.seed, "Random seed for a single placement run."); + app.add_flag( + "--write-output-files", + options.write_output_files, + "Write notebook-friendly CSV and JSON output artifacts."); + app.add_option( + "--output-dir", + options.output_dir, + "Directory for output artifacts when --write-output-files is set."); + + app.add_option( + "--num-epochs", + config.num_epochs, + "Number of optimization epochs."); + app.add_option("--lr", config.lr, "Learning rate for Adam."); + app.add_option( + "--lambda-wirelength", + config.lambda_wirelength, + "Weight applied to the wirelength loss."); + app.add_option( + "--lambda-overlap", + config.lambda_overlap, + "Weight applied to the overlap loss."); + app.add_option("--scheduler", config.scheduler_name, "Learning-rate scheduler.") + ->check(CLI::IsMember( + {"plateau", "cosine", "step", "exponential", "none"})); + app.add_option( + "--scheduler-patience", + config.scheduler_patience, + "Patience for ReduceLROnPlateau."); + app.add_option( + "--scheduler-factor", + config.scheduler_factor, + "Decay factor for ReduceLROnPlateau."); + app.add_option( + "--scheduler-eta-min", + config.scheduler_eta_min, + "Minimum learning rate for cosine annealing."); + app.add_option( + "--scheduler-step-size", + config.scheduler_step_size, + "Step size in epochs for StepLR."); + app.add_option( + "--scheduler-gamma", + config.scheduler_gamma, + "Gamma decay for step and exponential schedulers."); + app.add_flag( + "--track-overlap-metrics", + config.track_overlap_metrics, + "Compute overlap metrics every epoch."); + app.add_flag( + "--no-early-stop", + [&config](int64_t count) { + if (count > 0) { + config.early_stop_enabled = false; + } + }, + "Disable overlap-first early stopping."); + app.add_option( + "--early-stop-patience", + config.early_stop_patience, + "Patience before stopping when overlap stops improving."); + app.add_option( + "--early-stop-min-delta", + config.early_stop_min_delta, + "Minimum improvement required to reset early-stop patience."); + app.add_option( + "--early-stop-overlap-threshold", + config.early_stop_overlap_threshold, + "Overlap threshold treated as effectively zero."); + app.add_option( + "--early-stop-zero-overlap-patience", + config.early_stop_zero_overlap_patience, + "Extra patience after zero overlap is reached."); + app.add_flag("--quiet", [&config](int64_t count) { + if (count > 0) { + config.verbose = false; + } + }, "Suppress per-epoch output for a single placement run."); + app.add_option( + "--log-interval", + config.log_interval, + "Epoch interval for verbose training logs."); +} + +void validateOptions( + const CliOptions& options, + const placement::TrainingConfig& config) { + if (options.num_macros < 0 || options.num_std_cells < 0) { + throw std::invalid_argument("Cell counts must be nonnegative"); + } + if (options.num_macros + options.num_std_cells < 0) { + throw std::invalid_argument("Cell counts overflowed"); + } + if (config.num_epochs < 0) { + throw std::invalid_argument("Number of epochs must be nonnegative"); + } + if (config.lr <= 0.0) { + throw std::invalid_argument("Learning rate must be positive"); + } + if (config.scheduler_patience < 0) { + throw std::invalid_argument("Scheduler patience must be nonnegative"); + } + if (config.scheduler_factor <= 0.0) { + throw std::invalid_argument("Scheduler factor must be positive"); + } + if (config.scheduler_step_size <= 0) { + throw std::invalid_argument("Scheduler step size must be positive"); + } + if (config.early_stop_patience <= 0 || + config.early_stop_zero_overlap_patience <= 0) { + throw std::invalid_argument("Early-stop patience values must be positive"); + } +} + +} // namespace + +int main(int argc, char** argv) { + CliOptions options; + placement::TrainingConfig config; + config.log_interval = 200; + + CLI::App app{"Placement C++ runner"}; + configureCli(app, options, config); + CLI11_PARSE(app, argc, argv); + + try { + validateOptions(options, config); + config.device = resolveDeviceType(options.device); + + if (options.run_benchmark) { + config.verbose = false; + return runBenchmark(options, config); + } + return runSinglePlacement(options, config); + } catch (const c10::Error& error) { + std::cerr << "LibTorch error: " << error.what_without_backtrace() << "\n"; + } catch (const std::exception& error) { + std::cerr << "Error: " << error.what() << "\n"; + } + return 1; +} diff --git a/cpp/test.cpp b/cpp/test.cpp new file mode 100644 index 0000000..dee325f --- /dev/null +++ b/cpp/test.cpp @@ -0,0 +1,289 @@ +#include "placement/benchmark.h" +#include "placement/types.h" + +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +namespace { + +struct TestOptions { + std::string device = "auto"; + int workers = 1; +}; + +std::string deviceTypeName(c10::DeviceType device) { + switch (device) { + case c10::DeviceType::CPU: + return "cpu"; + case c10::DeviceType::CUDA: + return "cuda"; + case c10::DeviceType::MPS: + return "mps"; + default: + return "unknown"; + } +} + +c10::DeviceType resolveDeviceType(const std::string& device) { + if (device == "auto") { + if (torch::cuda::is_available()) { + return torch::kCUDA; + } + if (torch::mps::is_available()) { + return torch::kMPS; + } + return torch::kCPU; + } + if (device == "cpu") { + return torch::kCPU; + } + if (device == "cuda") { + if (!torch::cuda::is_available()) { + throw std::invalid_argument("CUDA device requested but unavailable"); + } + return torch::kCUDA; + } + if (device == "mps") { + if (!torch::mps::is_available()) { + throw std::invalid_argument("MPS device requested but unavailable"); + } + return torch::kMPS; + } + throw std::invalid_argument("Unsupported device: " + device); +} + +void printRule() { + std::cout << std::string(70, '=') << "\n"; +} + +void printTrainingConfig(const placement::TrainingConfig& config, int workers) { + std::cout << "Using hyperparameters:\n"; + std::cout << " num_epochs: " << config.num_epochs << "\n"; + std::cout << " lr: " << config.lr << "\n"; + std::cout << " lambda_wirelength: " << config.lambda_wirelength << "\n"; + std::cout << " lambda_overlap: " << config.lambda_overlap << "\n"; + std::cout << " scheduler: " << config.scheduler_name << "\n"; + std::cout << " scheduler_patience: " << config.scheduler_patience << "\n"; + std::cout << " scheduler_factor: " << config.scheduler_factor << "\n"; + std::cout << " scheduler_eta_min: " << config.scheduler_eta_min << "\n"; + std::cout << " scheduler_step_size: " << config.scheduler_step_size << "\n"; + std::cout << " scheduler_gamma: " << config.scheduler_gamma << "\n"; + std::cout << " track_overlap_metrics: " + << (config.track_overlap_metrics ? "true" : "false") << "\n"; + std::cout << " early_stop_enabled: " + << (config.early_stop_enabled ? "true" : "false") << "\n"; + std::cout << " early_stop_patience: " << config.early_stop_patience << "\n"; + std::cout << " early_stop_min_delta: " << config.early_stop_min_delta << "\n"; + std::cout << " early_stop_overlap_threshold: " + << config.early_stop_overlap_threshold << "\n"; + std::cout << " early_stop_zero_overlap_patience: " + << config.early_stop_zero_overlap_patience << "\n"; + std::cout << " workers: " << workers << "\n"; +} + +const char* sizeCategory(const placement::BenchmarkCase& test_case) { + if (test_case.num_std_cells <= 30) { + return "Small"; + } + if (test_case.num_std_cells <= 100) { + return "Medium"; + } + return "Large"; +} + +void printCaseList() { + int case_index = 1; + const std::vector& cases = + placement::activeBenchmarkCases(); + for (const placement::BenchmarkCase& test_case : cases) { + std::cout << "Test " << case_index++ << "/" << cases.size() << ": " + << sizeCategory(test_case) << " (" << test_case.num_macros + << " macros, " << test_case.num_std_cells << " std cells)\n"; + std::cout << " Seed: " << test_case.seed << "\n"; + } +} + +void printBenchmarkResult(const placement::BenchmarkResult& result) { + const char* status = result.passed ? "PASS" : "FAIL"; + std::cout << "Completed test " << result.test_id << ":\n"; + std::cout << " Device: " << deviceTypeName(result.device) << "\n"; + std::cout << " Overlap Ratio: " << std::fixed << std::setprecision(4) + << result.overlap_ratio << " (" << result.num_cells_with_overlaps + << "/" << result.total_cells << " cells)\n"; + std::cout << " Normalized WL: " << std::fixed << std::setprecision(4) + << result.normalized_wl << "\n"; + std::cout << " Time: " << std::fixed << std::setprecision(2) + << result.elapsed_seconds << "s\n"; + std::cout << " Status: " << status << "\n\n"; +} + +void configureCli( + CLI::App& app, + TestOptions& options, + placement::TrainingConfig& config) { + app.add_option( + "--device", + options.device, + "Device to run on: auto, cpu, cuda, or mps.") + ->check(CLI::IsMember({"auto", "cpu", "cuda", "mps"})); + app.add_option( + "--workers", + options.workers, + "Accepted for test.py CLI parity; C++ execution is currently serial."); + app.add_option( + "--num-epochs", + config.num_epochs, + "Number of optimization epochs."); + app.add_option("--lr", config.lr, "Learning rate for Adam."); + app.add_option( + "--lambda-wirelength", + config.lambda_wirelength, + "Weight applied to the wirelength loss."); + app.add_option( + "--lambda-overlap", + config.lambda_overlap, + "Weight applied to the overlap loss."); + app.add_option("--scheduler", config.scheduler_name, "Learning-rate scheduler.") + ->check(CLI::IsMember( + {"plateau", "cosine", "step", "exponential", "none"})); + app.add_option( + "--scheduler-patience", + config.scheduler_patience, + "Patience for ReduceLROnPlateau."); + app.add_option( + "--scheduler-factor", + config.scheduler_factor, + "Decay factor for ReduceLROnPlateau."); + app.add_option( + "--scheduler-eta-min", + config.scheduler_eta_min, + "Minimum learning rate for cosine annealing."); + app.add_option( + "--scheduler-step-size", + config.scheduler_step_size, + "Step size in epochs for StepLR."); + app.add_option( + "--scheduler-gamma", + config.scheduler_gamma, + "Gamma decay for step and exponential schedulers."); + app.add_flag( + "--track-overlap-metrics", + config.track_overlap_metrics, + "Compute overlap metrics every epoch."); + app.add_flag( + "--no-early-stop", + [&config](int64_t count) { + if (count > 0) { + config.early_stop_enabled = false; + } + }, + "Disable overlap-first early stopping."); + app.add_option( + "--early-stop-patience", + config.early_stop_patience, + "Patience before stopping when overlap stops improving."); + app.add_option( + "--early-stop-min-delta", + config.early_stop_min_delta, + "Minimum improvement required to reset early-stop patience."); + app.add_option( + "--early-stop-overlap-threshold", + config.early_stop_overlap_threshold, + "Overlap threshold treated as effectively zero."); + app.add_option( + "--early-stop-zero-overlap-patience", + config.early_stop_zero_overlap_patience, + "Extra patience after zero overlap is reached."); +} + +void validateOptions( + const TestOptions& options, + const placement::TrainingConfig& config) { + if (options.workers <= 0) { + throw std::invalid_argument("Worker count must be positive"); + } + if (config.num_epochs < 0) { + throw std::invalid_argument("Number of epochs must be nonnegative"); + } + if (config.lr <= 0.0) { + throw std::invalid_argument("Learning rate must be positive"); + } + if (config.scheduler_patience < 0) { + throw std::invalid_argument("Scheduler patience must be nonnegative"); + } + if (config.scheduler_factor <= 0.0) { + throw std::invalid_argument("Scheduler factor must be positive"); + } + if (config.scheduler_step_size <= 0) { + throw std::invalid_argument("Scheduler step size must be positive"); + } + if (config.early_stop_patience <= 0 || + config.early_stop_zero_overlap_patience <= 0) { + throw std::invalid_argument("Early-stop patience values must be positive"); + } +} + +int runTestSuite( + const TestOptions& options, + const placement::TrainingConfig& config, + const char* binary_path) { + printRule(); + std::cout << "PLACEMENT CHALLENGE TEST SUITE\n"; + printRule(); + std::cout << "\nBinary: " << std::filesystem::absolute(binary_path).string() + << "\n"; + std::cout << "\nRunning " << placement::activeBenchmarkCases().size() + << " test cases with various netlist sizes...\n"; + printTrainingConfig(config, options.workers); + std::cout << "\nLoss history tracking disabled.\n\n"; + printCaseList(); + std::cout << "Running serially\n\n"; + + const placement::BenchmarkSummary summary = + placement::runActiveBenchmarkCases(config); + for (const placement::BenchmarkResult& result : summary.results) { + printBenchmarkResult(result); + } + + printRule(); + std::cout << "FINAL RESULTS\n"; + printRule(); + std::cout << "Average Overlap: " << std::fixed << std::setprecision(4) + << summary.average_overlap << "\n"; + std::cout << "Average Wirelength: " << std::fixed << std::setprecision(4) + << summary.average_wirelength << "\n"; + std::cout << "Total Runtime: " << std::fixed << std::setprecision(2) + << summary.total_elapsed_seconds << "s\n"; + return 0; +} + +} // namespace + +int main(int argc, char** argv) { + TestOptions options; + placement::TrainingConfig config; + config.verbose = false; + + CLI::App app{"Placement C++ test suite runner"}; + configureCli(app, options, config); + CLI11_PARSE(app, argc, argv); + + try { + validateOptions(options, config); + config.device = resolveDeviceType(options.device); + return runTestSuite(options, config, argv[0]); + } catch (const c10::Error& error) { + std::cerr << "LibTorch error: " << error.what_without_backtrace() << "\n"; + } catch (const std::exception& error) { + std::cerr << "Error: " << error.what() << "\n"; + } + return 1; +} From 673f03d72e19f87437ac1d938f196febbbe248dc Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 15:07:32 -0700 Subject: [PATCH 44/48] add visualization capability like matplotlib --- .gitignore | 2 + cpp/CMakeLists.txt | 6 +- cpp/placement.cpp | 4 +- cpp/tests/metrics_tests.cpp | 4 +- cpp/tests/visualization_tests.cpp | 24 +-- cpp/vcpkg.json | 3 +- cpp/visualization.cpp | 329 ++++++++---------------------- 7 files changed, 107 insertions(+), 265 deletions(-) diff --git a/.gitignore b/.gitignore index c154309..69ed62f 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,8 @@ *.jpeg *.gif *.bmp +*.csv + */.ipynb_checkpoints/* profile/* diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index 8194fea..71013b7 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -78,7 +78,7 @@ if(NOT Python3_EXECUTABLE) endif() endif() -find_package(Python3 COMPONENTS Interpreter REQUIRED) +find_package(Python3 COMPONENTS Interpreter Development REQUIRED) execute_process( COMMAND "${Python3_EXECUTABLE}" -c "import torch; print(torch.utils.cmake_prefix_path)" OUTPUT_VARIABLE TORCH_CMAKE_PREFIX_PATH @@ -92,6 +92,7 @@ list(PREPEND CMAKE_PREFIX_PATH "${TORCH_CMAKE_PREFIX_PATH}") find_package(Torch CONFIG REQUIRED) find_package(CLI11 CONFIG REQUIRED) +find_path(MATPLOTLIB_CPP_INCLUDE_DIRS "matplotlibcpp.h" REQUIRED) add_library( placement_core @@ -103,7 +104,8 @@ add_library( visualization.cpp ) target_include_directories(placement_core PUBLIC "${CMAKE_CURRENT_LIST_DIR}/include") -target_link_libraries(placement_core PUBLIC "${TORCH_LIBRARIES}") +target_include_directories(placement_core PRIVATE "${MATPLOTLIB_CPP_INCLUDE_DIRS}") +target_link_libraries(placement_core PUBLIC "${TORCH_LIBRARIES}" Python3::Python) target_compile_features(placement_core PUBLIC cxx_std_20) enable_placement_coverage(placement_core) diff --git a/cpp/placement.cpp b/cpp/placement.cpp index 6aabbc1..4858d1d 100644 --- a/cpp/placement.cpp +++ b/cpp/placement.cpp @@ -34,7 +34,7 @@ struct CliOptions { int num_std_cells = 10; int seed = 42; bool write_output_files = false; - std::string output_dir = "."; + std::string output_dir = ".."; }; std::string deviceTypeName(c10::DeviceType device) { @@ -492,7 +492,7 @@ void writeSinglePlacementArtifacts( const placement::TrainingResult& training_result, bool passed) { const std::filesystem::path visualization_path = - outputFilePath(options, "placement_result.svg"); + outputFilePath(options, "placement_result.png"); placement::plotPlacement( training_result.initial_cell_features, training_result.final_cell_features, diff --git a/cpp/tests/metrics_tests.cpp b/cpp/tests/metrics_tests.cpp index a10f54e..7a29441 100644 --- a/cpp/tests/metrics_tests.cpp +++ b/cpp/tests/metrics_tests.cpp @@ -12,7 +12,7 @@ #include #include -void visualizationWritesSvgWithExpectedContent(); +void visualizationWritesPngWithExpectedContent(); namespace { @@ -534,7 +534,7 @@ int main() { benchmarkCasePopulatesMetricsAndUsesSeed(); benchmarkSummaryAggregatesOrderedResults(); emptyBenchmarkSummaryIsZeroed(); - visualizationWritesSvgWithExpectedContent(); + visualizationWritesPngWithExpectedContent(); } catch (const std::exception& error) { std::cerr << "placement_unit_tests failed: " << error.what() << '\n'; return 1; diff --git a/cpp/tests/visualization_tests.cpp b/cpp/tests/visualization_tests.cpp index 1e779cd..0f03afc 100644 --- a/cpp/tests/visualization_tests.cpp +++ b/cpp/tests/visualization_tests.cpp @@ -17,7 +17,7 @@ void expect(bool condition, const std::string& message) { } std::string readFile(const std::filesystem::path& path) { - std::ifstream input(path); + std::ifstream input(path, std::ios::binary); if (!input) { throw std::runtime_error("unable to read visualization output"); } @@ -29,7 +29,7 @@ std::string readFile(const std::filesystem::path& path) { } // namespace -void visualizationWritesSvgWithExpectedContent() { +void visualizationWritesPngWithExpectedContent() { const auto float_options = torch::TensorOptions().dtype(torch::kFloat32); const auto initial_cell_features = torch::tensor( @@ -47,7 +47,7 @@ void visualizationWritesSvgWithExpectedContent() { const std::filesystem::path output_path = std::filesystem::temp_directory_path() / "placement_cpp_visualization_tests" / - "nested" / "tiny_placement.svg"; + "nested" / "tiny_placement.png"; std::filesystem::remove(output_path); placement::plotPlacement(initial_cell_features, final_cell_features, output_path); @@ -56,20 +56,8 @@ void visualizationWritesSvgWithExpectedContent() { expect(std::filesystem::file_size(output_path) > 0, "visualization output is nonempty"); const std::string content = readFile(output_path); + expect(content.size() > 8, "visualization output has png header bytes"); expect( - content.find("Initial Placement") != std::string::npos, - "visualization contains initial label"); - expect( - content.find("Final Placement") != std::string::npos, - "visualization contains final label"); - expect(content.find("(content[0]) == 0x89 && content.substr(1, 3) == "PNG", + "visualization output is a png"); } diff --git a/cpp/vcpkg.json b/cpp/vcpkg.json index 7b90084..34a01e1 100644 --- a/cpp/vcpkg.json +++ b/cpp/vcpkg.json @@ -3,6 +3,7 @@ "name": "placement-cpp", "version-string": "0.1.0", "dependencies": [ - "cli11" + "cli11", + "matplotlib-cpp" ] } diff --git a/cpp/visualization.cpp b/cpp/visualization.cpp index deed2b2..e7ff0e5 100644 --- a/cpp/visualization.cpp +++ b/cpp/visualization.cpp @@ -3,11 +3,14 @@ #include "placement/metrics.h" #include "placement/types.h" +#define WITHOUT_NUMPY +#include + #include #include #include +#include #include -#include #include #include #include @@ -18,95 +21,29 @@ namespace { using namespace torch::indexing; - -constexpr double kSvgWidth = 1200.0; -constexpr double kSvgHeight = 600.0; -constexpr double kPanelWidth = 560.0; -constexpr double kPlotTop = 95.0; -constexpr double kPlotWidth = 500.0; -constexpr double kPlotHeight = 455.0; -constexpr double kWorldMargin = 10.0; +namespace plt = matplotlibcpp; int64_t featureIndex(placement::CellFeatureIdx idx) { return static_cast(idx); } -bool isUsableCoordinate(double value) { - constexpr double kMaxCoordinate = 1.0e12; - return std::isfinite(value) && std::abs(value) <= kMaxCoordinate; -} - -std::string formatDouble(double value, int precision = 2) { - std::ostringstream stream; - stream << std::fixed << std::setprecision(precision) << value; - return stream.str(); -} - struct CellRect { double center_x = 0.0; double center_y = 0.0; double width = 0.0; double height = 0.0; - bool has_finite_center = false; - bool drawable = false; -}; - -struct Bounds { - double min_x = std::numeric_limits::infinity(); - double max_x = -std::numeric_limits::infinity(); - double min_y = std::numeric_limits::infinity(); - double max_y = -std::numeric_limits::infinity(); - - void include(double x, double y) { - if (!isUsableCoordinate(x) || !isUsableCoordinate(y)) { - return; - } - - min_x = std::min(min_x, x); - max_x = std::max(max_x, x); - min_y = std::min(min_y, y); - max_y = std::max(max_y, y); - } - - bool valid() const { - return min_x <= max_x && min_y <= max_y && std::isfinite(min_x) && - std::isfinite(max_x) && std::isfinite(min_y) && std::isfinite(max_y); - } }; struct PanelData { torch::Tensor cells; std::vector rects; - Bounds bounds; placement::OverlapMetrics metrics; -}; - -struct FinalBounds { double min_x = -10.0; double max_x = 10.0; double min_y = -10.0; double max_y = 10.0; }; -struct Transform { - FinalBounds bounds; - double x = 0.0; - double y = 0.0; - double width = 0.0; - double height = 0.0; - double scale = 1.0; - double x_padding = 0.0; - double y_padding = 0.0; - - double svgX(double world_x) const { - return x + x_padding + (world_x - bounds.min_x) * scale; - } - - double svgY(double world_y) const { - return y + y_padding + (bounds.max_y - world_y) * scale; - } -}; - torch::Tensor prepareCellFeatures(const torch::Tensor& cell_features) { if (!cell_features.defined()) { throw std::invalid_argument("cell feature tensor must be defined"); @@ -125,25 +62,12 @@ torch::Tensor prepareCellFeatures(const torch::Tensor& cell_features) { .contiguous(); } -CellRect readRect(const torch::Tensor& cells, int64_t row) { - CellRect rect; - rect.center_x = - cells.index({row, featureIndex(placement::CellFeatureIdx::X)}).item(); - rect.center_y = - cells.index({row, featureIndex(placement::CellFeatureIdx::Y)}).item(); - rect.width = - cells.index({row, featureIndex(placement::CellFeatureIdx::Width)}) - .item(); - rect.height = - cells.index({row, featureIndex(placement::CellFeatureIdx::Height)}) - .item(); - - rect.has_finite_center = - isUsableCoordinate(rect.center_x) && isUsableCoordinate(rect.center_y); - rect.drawable = rect.has_finite_center && isUsableCoordinate(rect.width) && - isUsableCoordinate(rect.height) && rect.width > 0.0 && - rect.height > 0.0; - return rect; +double scalarAt(const torch::Tensor& cells, int64_t row, placement::CellFeatureIdx idx) { + return cells.index({row, featureIndex(idx)}).item(); +} + +bool isFinite(double value) { + return std::isfinite(value); } PanelData buildPanelData(const torch::Tensor& cell_features) { @@ -151,163 +75,87 @@ PanelData buildPanelData(const torch::Tensor& cell_features) { panel.cells = prepareCellFeatures(cell_features); panel.metrics = placement::calculateOverlapMetrics(panel.cells); + double min_x = std::numeric_limits::infinity(); + double max_x = -std::numeric_limits::infinity(); + double min_y = std::numeric_limits::infinity(); + double max_y = -std::numeric_limits::infinity(); + const int64_t num_cells = panel.cells.size(0); panel.rects.reserve(static_cast(num_cells)); for (int64_t index = 0; index < num_cells; ++index) { - CellRect rect = readRect(panel.cells, index); - if (rect.drawable) { - panel.bounds.include(rect.center_x - rect.width / 2.0, rect.center_y); - panel.bounds.include(rect.center_x + rect.width / 2.0, rect.center_y); - panel.bounds.include(rect.center_x, rect.center_y - rect.height / 2.0); - panel.bounds.include(rect.center_x, rect.center_y + rect.height / 2.0); - } else if (rect.has_finite_center) { - panel.bounds.include(rect.center_x, rect.center_y); - } + CellRect rect; + rect.center_x = scalarAt(panel.cells, index, placement::CellFeatureIdx::X); + rect.center_y = scalarAt(panel.cells, index, placement::CellFeatureIdx::Y); + rect.width = scalarAt(panel.cells, index, placement::CellFeatureIdx::Width); + rect.height = scalarAt(panel.cells, index, placement::CellFeatureIdx::Height); panel.rects.push_back(rect); - } - return panel; -} - -FinalBounds finalizeBounds(const Bounds& bounds) { - if (!bounds.valid()) { - return {}; + if (isFinite(rect.center_x) && isFinite(rect.center_y)) { + min_x = std::min(min_x, rect.center_x); + max_x = std::max(max_x, rect.center_x); + min_y = std::min(min_y, rect.center_y); + max_y = std::max(max_y, rect.center_y); + } } - FinalBounds final_bounds{ - bounds.min_x - kWorldMargin, - bounds.max_x + kWorldMargin, - bounds.min_y - kWorldMargin, - bounds.max_y + kWorldMargin, - }; - - if (final_bounds.min_x >= final_bounds.max_x) { - final_bounds.min_x -= 1.0; - final_bounds.max_x += 1.0; - } - if (final_bounds.min_y >= final_bounds.max_y) { - final_bounds.min_y -= 1.0; - final_bounds.max_y += 1.0; + if (min_x <= max_x && min_y <= max_y) { + constexpr double kMargin = 10.0; + panel.min_x = min_x - kMargin; + panel.max_x = max_x + kMargin; + panel.min_y = min_y - kMargin; + panel.max_y = max_y + kMargin; } - return final_bounds; + return panel; } -Transform makeTransform( - const FinalBounds& bounds, - double plot_x, - double plot_y, - double plot_width, - double plot_height) { - const double world_width = std::max(bounds.max_x - bounds.min_x, 1.0); - const double world_height = std::max(bounds.max_y - bounds.min_y, 1.0); - const double scale = std::min(plot_width / world_width, plot_height / world_height); - const double used_width = world_width * scale; - const double used_height = world_height * scale; - - return { - bounds, - plot_x, - plot_y, - plot_width, - plot_height, - scale, - (plot_width - used_width) / 2.0, - (plot_height - used_height) / 2.0, - }; +std::string formatTitle(const std::string& title, const placement::OverlapMetrics& metrics) { + std::ostringstream output; + output << title << "\nOverlaps: " << metrics.overlap_count + << ", Total Overlap Area: " << std::fixed << std::setprecision(2) + << metrics.total_overlap_area; + return output.str(); } -void writeText( - std::ostream& output, - double x, - double y, - const std::string& text, - int font_size, - const std::string& anchor = "middle", - const std::string& weight = "normal") { - output << "" << text << "\n"; -} +void drawCell(const CellRect& rect) { + if (!isFinite(rect.center_x) || !isFinite(rect.center_y) || !isFinite(rect.width) || + !isFinite(rect.height) || rect.width <= 0.0 || rect.height <= 0.0) { + return; + } + + const double left = rect.center_x - rect.width / 2.0; + const double right = rect.center_x + rect.width / 2.0; + const double bottom = rect.center_y - rect.height / 2.0; + const double top = rect.center_y + rect.height / 2.0; + const std::vector xs = {left, right, right, left, left}; + const std::vector ys = {bottom, bottom, top, top, bottom}; -void writeGrid(std::ostream& output, const Transform& transform) { - constexpr int kGridLines = 5; - output << "\n"; - for (int index = 0; index <= kGridLines; ++index) { - const double ratio = static_cast(index) / kGridLines; - const double world_x = - transform.bounds.min_x + - (transform.bounds.max_x - transform.bounds.min_x) * ratio; - const double x = transform.svgX(world_x); - output << "\n"; - - const double world_y = - transform.bounds.min_y + - (transform.bounds.max_y - transform.bounds.min_y) * ratio; - const double y = transform.svgY(world_y); - output << "\n"; + if (!plt::fill(xs, ys, {{"color", "lightblue"}})) { + throw std::runtime_error("Call to fill() failed."); + } + if (!plt::plot(xs, ys, "b-")) { + throw std::runtime_error("Call to plot() failed."); } - output << "\n"; } -void writeCellRects( - std::ostream& output, - const std::vector& rects, - const Transform& transform) { - output << "\n"; - for (const CellRect& rect : rects) { - if (!rect.drawable) { - continue; - } - - const double left = rect.center_x - rect.width / 2.0; - const double top = rect.center_y + rect.height / 2.0; - output << "\n"; +void drawPanel(const PanelData& panel, const std::string& title) { + for (const CellRect& rect : panel.rects) { + drawCell(rect); } - output << "\n"; + + plt::title(formatTitle(title, panel.metrics)); + plt::axis("equal"); + plt::grid(true); + plt::xlim(panel.min_x, panel.max_x); + plt::ylim(panel.min_y, panel.max_y); } -void writePanel( - std::ostream& output, - const PanelData& panel, - const std::string& title, - double panel_x) { - const double center_x = panel_x + kPanelWidth / 2.0; - writeText(output, center_x, 34.0, title, 18, "middle", "bold"); - writeText( - output, - center_x, - 58.0, - "Overlaps: " + std::to_string(panel.metrics.overlap_count) + - ", Total Overlap Area: " + - formatDouble(panel.metrics.total_overlap_area), - 14); - - const Transform transform = makeTransform( - finalizeBounds(panel.bounds), - panel_x + 30.0, - kPlotTop, - kPlotWidth, - kPlotHeight); - - output << "\n"; - writeGrid(output, transform); - writeCellRects(output, panel.rects, transform); +void configureHeadlessBackend() { +#ifndef _WIN32 + std::filesystem::create_directories("/tmp/matplotlib-cpp"); + setenv("MPLBACKEND", "Agg", 0); + setenv("MPLCONFIGDIR", "/tmp/matplotlib-cpp", 0); +#endif } } // namespace @@ -318,6 +166,8 @@ void plotPlacement( const torch::Tensor& initial_cell_features, const torch::Tensor& final_cell_features, const std::filesystem::path& output_path) { + configureHeadlessBackend(); + const PanelData initial_panel = buildPanelData(initial_cell_features); const PanelData final_panel = buildPanelData(final_cell_features); @@ -326,23 +176,22 @@ void plotPlacement( std::filesystem::create_directories(parent); } - std::ofstream output(output_path); - if (!output) { - throw std::runtime_error( - "unable to open placement visualization output path: " + - output_path.string()); + plt::figure_size(1600, 800); + try { + plt::subplot2grid(1, 2, 0, 0); + drawPanel(initial_panel, "Initial Placement"); + plt::subplot2grid(1, 2, 0, 1); + drawPanel(final_panel, "Final Placement"); + plt::tight_layout(); + plt::save(output_path.string()); + plt::close(); + } catch (...) { + if (PyErr_Occurred() != nullptr) { + PyErr_Print(); + } + plt::close(); + throw; } - - output << "\n"; - output << "\n"; - output << "Placement Visualization\n"; - output << "\n"; - writePanel(output, initial_panel, "Initial Placement", 20.0); - writePanel(output, final_panel, "Final Placement", 620.0); - output << "\n"; } } // namespace placement From 01679b2c8c16643a94ca9a747045106bfc8789ee Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Sun, 26 Apr 2026 23:55:34 -0700 Subject: [PATCH 45/48] fix visualization API call, execute jobs concurrently --- cpp/CMakeLists.txt | 25 +++- cpp/benchmark.cpp | 195 +++++++++++++++++++++++------- cpp/include/placement/benchmark.h | 7 +- cpp/test.cpp | 10 +- cpp/tests/metrics_tests.cpp | 22 ++++ cpp/visualization.cpp | 131 ++++++++++++++++++-- 6 files changed, 329 insertions(+), 61 deletions(-) diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index 71013b7..3e314d5 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -88,6 +88,24 @@ execute_process( if(NOT TORCH_CMAKE_PREFIX_RESULT EQUAL 0) message(FATAL_ERROR "Unable to import torch from ${Python3_EXECUTABLE}. Install torch in .venv or set Python3_EXECUTABLE.") endif() +execute_process( + COMMAND "${Python3_EXECUTABLE}" -c "import sysconfig; print(sysconfig.get_paths()['purelib'])" + OUTPUT_VARIABLE PYTHON_SITE_PACKAGES + OUTPUT_STRIP_TRAILING_WHITESPACE + RESULT_VARIABLE PYTHON_SITE_PACKAGES_RESULT +) +if(NOT PYTHON_SITE_PACKAGES_RESULT EQUAL 0 OR PYTHON_SITE_PACKAGES STREQUAL "") + message(FATAL_ERROR "Unable to detect Python site-packages from ${Python3_EXECUTABLE}.") +endif() +execute_process( + COMMAND "${Python3_EXECUTABLE}" -c "import matplotlib" + RESULT_VARIABLE MATPLOTLIB_IMPORT_RESULT + OUTPUT_QUIET + ERROR_QUIET +) +if(NOT MATPLOTLIB_IMPORT_RESULT EQUAL 0) + message(FATAL_ERROR "Unable to import matplotlib from ${Python3_EXECUTABLE}. Install matplotlib in the selected Python environment.") +endif() list(PREPEND CMAKE_PREFIX_PATH "${TORCH_CMAKE_PREFIX_PATH}") find_package(Torch CONFIG REQUIRED) @@ -104,7 +122,12 @@ add_library( visualization.cpp ) target_include_directories(placement_core PUBLIC "${CMAKE_CURRENT_LIST_DIR}/include") -target_include_directories(placement_core PRIVATE "${MATPLOTLIB_CPP_INCLUDE_DIRS}") +target_include_directories(placement_core SYSTEM PRIVATE "${MATPLOTLIB_CPP_INCLUDE_DIRS}") +target_compile_definitions( + placement_core + PRIVATE + PLACEMENT_PYTHON_SITE_PACKAGES="${PYTHON_SITE_PACKAGES}" +) target_link_libraries(placement_core PUBLIC "${TORCH_LIBRARIES}" Python3::Python) target_compile_features(placement_core PUBLIC cxx_std_20) enable_placement_coverage(placement_core) diff --git a/cpp/benchmark.cpp b/cpp/benchmark.cpp index adde84c..b89d483 100644 --- a/cpp/benchmark.cpp +++ b/cpp/benchmark.cpp @@ -4,44 +4,55 @@ #include "placement/metrics.h" #include "placement/training.h" +#include #include +#include +#include +#include +#include #include +#include namespace placement { -const std::vector& activeBenchmarkCases() { - static const std::vector cases = { - {1, 2, 20, 1001}, - {2, 3, 25, 1002}, - {3, 2, 30, 1003}, - {4, 3, 50, 1004}, - {5, 4, 75, 1005}, - {6, 5, 100, 1006}, - {7, 5, 150, 1007}, - {8, 7, 150, 1008}, - {9, 8, 200, 1009}, - {10, 10, 2000, 1010}, - }; - return cases; -} +namespace { -BenchmarkResult runBenchmarkCase( +PlacementProblem generateSeededProblem( const BenchmarkCase& test_case, - const TrainingConfig& config) { - if (test_case.seed != 0) { - torch::manual_seed(test_case.seed); + const TrainingConfig& benchmark_config, + std::mutex* rng_mutex) { + const auto generate = [&]() { + if (test_case.seed != 0) { + torch::manual_seed(test_case.seed); + } + + const torch::Device device(benchmark_config.device); + PlacementProblem problem = generatePlacementInput( + test_case.num_macros, + test_case.num_std_cells, + device, + false); + initializeCellPositions(problem.cell_features); + return problem; + }; + + if (rng_mutex == nullptr) { + return generate(); } + std::lock_guard lock(*rng_mutex); + return generate(); +} + +BenchmarkResult runBenchmarkCaseImpl( + const BenchmarkCase& test_case, + const TrainingConfig& config, + std::mutex* rng_mutex) { TrainingConfig benchmark_config = config; benchmark_config.verbose = false; - const torch::Device device(benchmark_config.device); - PlacementProblem problem = generatePlacementInput( - test_case.num_macros, - test_case.num_std_cells, - device, - false); - initializeCellPositions(problem.cell_features); + PlacementProblem problem = + generateSeededProblem(test_case, benchmark_config, rng_mutex); const auto start_time = std::chrono::steady_clock::now(); const TrainingResult training_result = trainPlacement( @@ -72,44 +83,140 @@ BenchmarkResult runBenchmarkCase( return result; } +void addResultToSummary(BenchmarkSummary& summary, BenchmarkResult result) { + if (result.passed) { + ++summary.passed_count; + } else { + ++summary.failed_count; + } + summary.results.push_back(std::move(result)); +} + +void finalizeSummary(BenchmarkSummary& summary) { + if (summary.results.empty()) { + return; + } + + double overlap_sum = 0.0; + double wirelength_sum = 0.0; + for (const BenchmarkResult& result : summary.results) { + overlap_sum += result.overlap_ratio; + wirelength_sum += result.normalized_wl; + } + + const double case_count = static_cast(summary.results.size()); + summary.average_overlap = overlap_sum / case_count; + summary.average_wirelength = wirelength_sum / case_count; +} + +} // namespace + +const std::vector& activeBenchmarkCases() { + static const std::vector cases = { + {1, 2, 20, 1001}, + {2, 3, 25, 1002}, + {3, 2, 30, 1003}, + {4, 3, 50, 1004}, + {5, 4, 75, 1005}, + {6, 5, 100, 1006}, + {7, 5, 150, 1007}, + {8, 7, 150, 1008}, + {9, 8, 200, 1009}, + {10, 10, 2000, 1010}, + }; + return cases; +} + +BenchmarkResult runBenchmarkCase( + const BenchmarkCase& test_case, + const TrainingConfig& config) { + return runBenchmarkCaseImpl(test_case, config, nullptr); +} + BenchmarkSummary runBenchmarkCases( const std::vector& test_cases, - const TrainingConfig& config) { + const TrainingConfig& config, + int worker_count) { + if (worker_count <= 0) { + throw std::invalid_argument("Worker count must be positive"); + } + BenchmarkSummary summary; if (test_cases.empty()) { return summary; } summary.results.reserve(test_cases.size()); - double overlap_sum = 0.0; - double wirelength_sum = 0.0; - const auto start_time = std::chrono::steady_clock::now(); - for (const BenchmarkCase& test_case : test_cases) { - BenchmarkResult result = runBenchmarkCase(test_case, config); - overlap_sum += result.overlap_ratio; - wirelength_sum += result.normalized_wl; - if (result.passed) { - ++summary.passed_count; - } else { - ++summary.failed_count; + if (worker_count == 1) { + for (const BenchmarkCase& test_case : test_cases) { + addResultToSummary( + summary, + runBenchmarkCaseImpl(test_case, config, nullptr)); + } + } else { + std::vector ordered_results(test_cases.size()); + std::atomic next_index{0}; + std::atomic should_stop{false}; + std::mutex rng_mutex; + std::mutex exception_mutex; + std::exception_ptr first_exception; + + std::vector workers; + workers.reserve(static_cast(worker_count)); + for (int worker_index = 0; worker_index < worker_count; ++worker_index) { + workers.emplace_back([&]() { + while (!should_stop.load()) { + const std::size_t index = next_index.fetch_add(1); + if (index >= test_cases.size()) { + return; + } + + try { + ordered_results[index] = runBenchmarkCaseImpl( + test_cases[index], + config, + &rng_mutex); + } catch (...) { + { + std::lock_guard lock(exception_mutex); + if (first_exception == nullptr) { + first_exception = std::current_exception(); + } + } + should_stop.store(true); + return; + } + } + }); + } + + for (std::thread& worker : workers) { + worker.join(); + } + + if (first_exception != nullptr) { + std::rethrow_exception(first_exception); } - summary.results.push_back(std::move(result)); + for (BenchmarkResult& result : ordered_results) { + addResultToSummary(summary, std::move(result)); + } } + const auto elapsed = std::chrono::steady_clock::now() - start_time; - const double case_count = static_cast(test_cases.size()); - summary.average_overlap = overlap_sum / case_count; - summary.average_wirelength = wirelength_sum / case_count; + finalizeSummary(summary); summary.total_elapsed_seconds = std::chrono::duration(elapsed).count(); return summary; } -BenchmarkSummary runActiveBenchmarkCases(const TrainingConfig& config) { - return runBenchmarkCases(activeBenchmarkCases(), config); +BenchmarkSummary runActiveBenchmarkCases( + const TrainingConfig& config, + int worker_count) { + return runBenchmarkCases(activeBenchmarkCases(), config, worker_count); } } // namespace placement diff --git a/cpp/include/placement/benchmark.h b/cpp/include/placement/benchmark.h index 77b7dda..7443534 100644 --- a/cpp/include/placement/benchmark.h +++ b/cpp/include/placement/benchmark.h @@ -14,8 +14,11 @@ BenchmarkResult runBenchmarkCase( BenchmarkSummary runBenchmarkCases( const std::vector& test_cases, - const TrainingConfig& config = {}); + const TrainingConfig& config = {}, + int worker_count = 1); -BenchmarkSummary runActiveBenchmarkCases(const TrainingConfig& config = {}); +BenchmarkSummary runActiveBenchmarkCases( + const TrainingConfig& config = {}, + int worker_count = 1); } // namespace placement diff --git a/cpp/test.cpp b/cpp/test.cpp index dee325f..43efa5c 100644 --- a/cpp/test.cpp +++ b/cpp/test.cpp @@ -137,7 +137,7 @@ void configureCli( app.add_option( "--workers", options.workers, - "Accepted for test.py CLI parity; C++ execution is currently serial."); + "Number of worker threads for benchmark cases."); app.add_option( "--num-epochs", config.num_epochs, @@ -245,10 +245,14 @@ int runTestSuite( printTrainingConfig(config, options.workers); std::cout << "\nLoss history tracking disabled.\n\n"; printCaseList(); - std::cout << "Running serially\n\n"; + if (options.workers == 1) { + std::cout << "Running serially\n\n"; + } else { + std::cout << "Running with " << options.workers << " workers\n\n"; + } const placement::BenchmarkSummary summary = - placement::runActiveBenchmarkCases(config); + placement::runActiveBenchmarkCases(config, options.workers); for (const placement::BenchmarkResult& result : summary.results) { printBenchmarkResult(result); } diff --git a/cpp/tests/metrics_tests.cpp b/cpp/tests/metrics_tests.cpp index 7a29441..a002ecd 100644 --- a/cpp/tests/metrics_tests.cpp +++ b/cpp/tests/metrics_tests.cpp @@ -504,6 +504,28 @@ void benchmarkSummaryAggregatesOrderedResults() { std::isfinite(summary.total_elapsed_seconds) && summary.total_elapsed_seconds >= 0.0, "benchmark finite total elapsed time"); + + const placement::BenchmarkSummary parallel_summary = + placement::runBenchmarkCases(cases, config, 2); + expect( + parallel_summary.results.size() == cases.size(), + "parallel benchmark summary result count"); + expect( + parallel_summary.results[0].test_id == summary.results[0].test_id, + "parallel benchmark preserves first id"); + expect( + parallel_summary.results[1].test_id == summary.results[1].test_id, + "parallel benchmark preserves second id"); + expectNear( + parallel_summary.average_overlap, + summary.average_overlap, + 1e-12, + "parallel benchmark average overlap"); + expectNear( + parallel_summary.average_wirelength, + summary.average_wirelength, + 1e-12, + "parallel benchmark average wirelength"); } void emptyBenchmarkSummaryIsZeroed() { diff --git a/cpp/visualization.cpp b/cpp/visualization.cpp index e7ff0e5..54fbcd2 100644 --- a/cpp/visualization.cpp +++ b/cpp/visualization.cpp @@ -23,6 +23,10 @@ namespace { using namespace torch::indexing; namespace plt = matplotlibcpp; +#ifndef PLACEMENT_PYTHON_SITE_PACKAGES +#define PLACEMENT_PYTHON_SITE_PACKAGES "" +#endif + int64_t featureIndex(placement::CellFeatureIdx idx) { return static_cast(idx); } @@ -138,24 +142,120 @@ void drawCell(const CellRect& rect) { } } +void setEqualAspect() { + PyObject* axes = PyObject_CallObject( + matplotlibcpp::detail::_interpreter::get().s_python_function_gca, + matplotlibcpp::detail::_interpreter::get().s_python_empty_tuple); + if (axes == nullptr) { + throw std::runtime_error("Call to gca() failed."); + } + + PyObject* result = PyObject_CallMethod( + axes, + const_cast("set_aspect"), + "ss", + "equal", + "box"); + Py_DECREF(axes); + if (result == nullptr) { + throw std::runtime_error("Call to set_aspect() failed."); + } + Py_DECREF(result); +} + void drawPanel(const PanelData& panel, const std::string& title) { for (const CellRect& rect : panel.rects) { drawCell(rect); } plt::title(formatTitle(title, panel.metrics)); - plt::axis("equal"); + setEqualAspect(); plt::grid(true); plt::xlim(panel.min_x, panel.max_x); plt::ylim(panel.min_y, panel.max_y); } -void configureHeadlessBackend() { -#ifndef _WIN32 - std::filesystem::create_directories("/tmp/matplotlib-cpp"); - setenv("MPLBACKEND", "Agg", 0); - setenv("MPLCONFIGDIR", "/tmp/matplotlib-cpp", 0); +void selectSubplot(long plot_number) { + PyObject* args = PyTuple_New(1); + PyTuple_SetItem(args, 0, PyLong_FromLong(plot_number)); + + PyObject* result = PyObject_CallObject( + matplotlibcpp::detail::_interpreter::get().s_python_function_subplot, + args); + Py_DECREF(args); + if (result == nullptr) { + throw std::runtime_error("Call to subplot() failed."); + } + Py_DECREF(result); +} + +void setEnvVar(const std::string& name, const std::string& value, bool overwrite) { +#ifdef _WIN32 + if (!overwrite && std::getenv(name.c_str()) != nullptr) { + return; + } + _putenv_s(name.c_str(), value.c_str()); +#else + setenv(name.c_str(), value.c_str(), overwrite ? 1 : 0); +#endif +} + +void prependEnvPath(const std::string& name, const std::string& path) { + if (path.empty()) { + return; + } + + const char* current_value = std::getenv(name.c_str()); + if (current_value == nullptr || std::string(current_value).empty()) { + setEnvVar(name, path, true); + return; + } + + const std::string current(current_value); + if (current == path) { + return; + } + +#ifdef _WIN32 + constexpr char kPathSeparator = ';'; +#else + constexpr char kPathSeparator = ':'; #endif + const std::string path_with_separator = path + kPathSeparator; + const std::string separator_with_path = + std::string(1, kPathSeparator) + path + kPathSeparator; + const bool ends_with_path = + current.size() > path.size() && + current.compare(current.size() - path.size(), path.size(), path) == 0 && + current[current.size() - path.size() - 1] == kPathSeparator; + if (current.rfind(path_with_separator, 0) == 0 || + current.find(separator_with_path) != std::string::npos || ends_with_path) { + return; + } + + setEnvVar(name, path + kPathSeparator + current, true); +} + +void configureHeadlessBackend() { + prependEnvPath("PYTHONPATH", PLACEMENT_PYTHON_SITE_PACKAGES); + + const std::filesystem::path config_dir = + std::filesystem::temp_directory_path() / "matplotlib-cpp"; + const std::filesystem::path cache_dir = + std::filesystem::temp_directory_path() / "matplotlib-cpp-cache"; + std::filesystem::create_directories(config_dir); + std::filesystem::create_directories(cache_dir); + + setEnvVar("MPLBACKEND", "Agg", true); + setEnvVar("MPLCONFIGDIR", config_dir.string(), true); + setEnvVar("XDG_CACHE_HOME", cache_dir.string(), false); +} + +void closePlotIgnoringErrors() { + try { + plt::close(); + } catch (...) { + } } } // namespace @@ -176,21 +276,30 @@ void plotPlacement( std::filesystem::create_directories(parent); } - plt::figure_size(1600, 800); try { - plt::subplot2grid(1, 2, 0, 0); + plt::figure_size(1600, 800); + selectSubplot(121); drawPanel(initial_panel, "Initial Placement"); - plt::subplot2grid(1, 2, 0, 1); + selectSubplot(122); drawPanel(final_panel, "Final Placement"); plt::tight_layout(); plt::save(output_path.string()); plt::close(); + } catch (const std::exception& error) { + if (PyErr_Occurred() != nullptr) { + PyErr_Print(); + } + closePlotIgnoringErrors(); + throw std::runtime_error( + "Unable to render placement image to " + output_path.string() + + ": " + error.what()); } catch (...) { if (PyErr_Occurred() != nullptr) { PyErr_Print(); } - plt::close(); - throw; + closePlotIgnoringErrors(); + throw std::runtime_error( + "Unable to render placement image to " + output_path.string()); } } From 32cb4f533208bcab27c5008cd9c065be24ee7ca3 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 27 Apr 2026 18:42:44 -0700 Subject: [PATCH 46/48] add cli to select device type for python --- .gitignore | 3 +++ arg_parse_util.py | 6 ++++++ cpp/benchmark.cpp | 4 ++++ cpp/include/placement/types.h | 5 +++++ cpp/placement.cpp | 21 ++++++++++++++++++++ cpp/test.cpp | 5 +++++ cpp/tests/metrics_tests.cpp | 11 +++++++++++ cpp/training.cpp | 1 + hyperparameter_search.py | 1 + placement.py | 37 +++++++++++++++++++++++++++++------ test.py | 7 +++++-- 11 files changed, 93 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index 69ed62f..31b61bc 100644 --- a/.gitignore +++ b/.gitignore @@ -19,6 +19,9 @@ temp.txt # C++ build and vcpkg manifest artifacts cpp/build/ +cpp/build-xcode/ cpp/build-coverage/ cpp/vcpkg_installed/ cpp/.vcpkg-root + + diff --git a/arg_parse_util.py b/arg_parse_util.py index 752f88b..d8b8f3d 100644 --- a/arg_parse_util.py +++ b/arg_parse_util.py @@ -101,6 +101,12 @@ def parse_args(): default=42, help="Random seed used to generate and initialize the placement problem.", ) + parser.add_argument( + "--device", + choices=("auto", "cpu", "cuda", "mps"), + default="auto", + help="Torch device to use. 'auto' selects cuda, then mps, then cpu.", + ) parser.add_argument( "--test-case-id", type=int, diff --git a/cpp/benchmark.cpp b/cpp/benchmark.cpp index b89d483..af218cd 100644 --- a/cpp/benchmark.cpp +++ b/cpp/benchmark.cpp @@ -80,6 +80,10 @@ BenchmarkResult runBenchmarkCaseImpl( result.overlap_ratio = metrics.overlap_ratio; result.normalized_wl = metrics.normalized_wl; result.passed = result.num_cells_with_overlaps == 0; + result.stopped_early = training_result.stopped_early; + result.stop_reason = training_result.stop_reason; + result.best_epoch = training_result.best_epoch; + result.epochs_completed = training_result.epochs_completed; return result; } diff --git a/cpp/include/placement/types.h b/cpp/include/placement/types.h index 8da19e0..9c1e499 100644 --- a/cpp/include/placement/types.h +++ b/cpp/include/placement/types.h @@ -62,6 +62,7 @@ struct TrainingResult { bool stopped_early = false; std::string stop_reason; int best_epoch = -1; + int epochs_completed = 0; }; struct OverlapMetrics { @@ -101,6 +102,10 @@ struct BenchmarkResult { double overlap_ratio = 0.0; double normalized_wl = 0.0; bool passed = false; + bool stopped_early = false; + std::string stop_reason; + int best_epoch = -1; + int epochs_completed = 0; }; struct BenchmarkSummary { diff --git a/cpp/placement.cpp b/cpp/placement.cpp index 4858d1d..af69c13 100644 --- a/cpp/placement.cpp +++ b/cpp/placement.cpp @@ -289,6 +289,10 @@ std::vector benchmarkResultHeader() { "overlap_ratio", "normalized_wl", "passed", + "stopped_early", + "stop_reason", + "best_epoch", + "epochs_completed", }; } @@ -307,6 +311,10 @@ std::vector benchmarkResultRow( formatDouble(result.overlap_ratio), formatDouble(result.normalized_wl), boolText(result.passed), + boolText(result.stopped_early), + result.stop_reason, + std::to_string(result.best_epoch), + std::to_string(result.epochs_completed), }; } @@ -326,6 +334,10 @@ std::vector benchmarkResultJsonFields( {"overlap_ratio", jsonDouble(result.overlap_ratio)}, {"normalized_wl", jsonDouble(result.normalized_wl)}, {"passed", jsonBool(result.passed)}, + {"stopped_early", jsonBool(result.stopped_early)}, + {"stop_reason", jsonString(result.stop_reason)}, + {"best_epoch", std::to_string(result.best_epoch)}, + {"epochs_completed", std::to_string(result.epochs_completed)}, }; } @@ -360,6 +372,7 @@ std::vector singlePlacementHeader() { "stopped_early", "stop_reason", "best_epoch", + "epochs_completed", "num_epochs", "early_stop_enabled", "early_stop_patience", @@ -409,6 +422,7 @@ std::vector singlePlacementRow( boolText(training_result.stopped_early), training_result.stop_reason, std::to_string(training_result.best_epoch), + std::to_string(training_result.epochs_completed), std::to_string(config.num_epochs), boolText(config.early_stop_enabled), std::to_string(config.early_stop_patience), @@ -470,6 +484,7 @@ std::vector singlePlacementJsonFields( {"stopped_early", jsonBool(training_result.stopped_early)}, {"stop_reason", jsonString(training_result.stop_reason)}, {"best_epoch", std::to_string(training_result.best_epoch)}, + {"epochs_completed", std::to_string(training_result.epochs_completed)}, {"num_epochs", std::to_string(config.num_epochs)}, {"early_stop_enabled", jsonBool(config.early_stop_enabled)}, {"early_stop_patience", std::to_string(config.early_stop_patience)}, @@ -644,6 +659,11 @@ void printBenchmarkResult(const placement::BenchmarkResult& result) { << "/" << result.total_cells << " cells)\n"; std::cout << " Normalized WL: " << std::fixed << std::setprecision(4) << result.normalized_wl << "\n"; + std::cout << " Epochs Completed: " << result.epochs_completed << "\n"; + if (result.stopped_early) { + std::cout << " Stopped Early: " << result.stop_reason + << " at best epoch " << result.best_epoch << "\n"; + } std::cout << " Time: " << std::fixed << std::setprecision(2) << result.elapsed_seconds << "s\n"; std::cout << " Status: " << status << "\n\n"; @@ -790,6 +810,7 @@ int runSinglePlacement( << normalized_metrics.total_cells << " cells)\n"; std::cout << "Normalized Wirelength: " << std::fixed << std::setprecision(4) << normalized_metrics.normalized_wl << "\n"; + std::cout << "Epochs Completed: " << training_result.epochs_completed << "\n"; if (training_result.stopped_early) { std::cout << "Stopped Early: " << training_result.stop_reason << " at best epoch " << training_result.best_epoch << "\n"; diff --git a/cpp/test.cpp b/cpp/test.cpp index 43efa5c..9e80805 100644 --- a/cpp/test.cpp +++ b/cpp/test.cpp @@ -120,6 +120,11 @@ void printBenchmarkResult(const placement::BenchmarkResult& result) { << "/" << result.total_cells << " cells)\n"; std::cout << " Normalized WL: " << std::fixed << std::setprecision(4) << result.normalized_wl << "\n"; + std::cout << " Epochs Completed: " << result.epochs_completed << "\n"; + if (result.stopped_early) { + std::cout << " Stopped Early: " << result.stop_reason + << " at best epoch " << result.best_epoch << "\n"; + } std::cout << " Time: " << std::fixed << std::setprecision(2) << result.elapsed_seconds << "s\n"; std::cout << " Status: " << status << "\n\n"; diff --git a/cpp/tests/metrics_tests.cpp b/cpp/tests/metrics_tests.cpp index a002ecd..0a6fab3 100644 --- a/cpp/tests/metrics_tests.cpp +++ b/cpp/tests/metrics_tests.cpp @@ -275,6 +275,7 @@ void trainingWithNoEpochsReturnsInitialPlacement() { "zero-epoch final features"); expect(!result.stopped_early, "zero-epoch does not stop early"); expect(result.best_epoch == -1, "zero-epoch best epoch"); + expect(result.epochs_completed == 0, "zero-epoch epochs completed"); } void trainingReducesOverlapLoss() { @@ -312,6 +313,9 @@ void trainingReducesOverlapLoss() { torch::allclose(result.initial_cell_features, cell_features), "training preserves initial features"); expect(!result.stopped_early, "overlap-only training no early stop"); + expect( + result.epochs_completed == config.num_epochs, + "overlap-only training epochs completed"); } void trainingReducesWirelengthLoss() { @@ -353,6 +357,9 @@ void trainingReducesWirelengthLoss() { .item(); expect(final_wl < initial_wl, "training reduces wirelength"); + expect( + result.epochs_completed == config.num_epochs, + "wirelength training epochs completed"); } void trainingReportsEarlyStopMetadata() { @@ -386,6 +393,7 @@ void trainingReportsEarlyStopMetadata() { result.stop_reason == "zero_overlap_plateau", "training early stop reason"); expect(result.best_epoch == 0, "training best epoch"); + expect(result.epochs_completed == 2, "early-stop epochs completed"); } void activeBenchmarkCasesMatchPythonReference() { @@ -447,6 +455,9 @@ void benchmarkCasePopulatesMetricsAndUsesSeed() { expect( first.passed == (first.num_cells_with_overlaps == 0), "benchmark pass flag"); + expect(first.epochs_completed == config.num_epochs, "benchmark epochs completed"); + expect(first.stopped_early == false, "benchmark early stop flag"); + expect(first.best_epoch == -1, "benchmark best epoch"); expect(first.num_nets == second.num_nets, "benchmark seeded net count"); expectNear( diff --git a/cpp/training.cpp b/cpp/training.cpp index 655b882..ded9769 100644 --- a/cpp/training.cpp +++ b/cpp/training.cpp @@ -168,6 +168,7 @@ TrainingResult trainPlacement( bool zero_overlap_reached = false; for (int epoch = 0; epoch < config.num_epochs; ++epoch) { + result.epochs_completed = epoch + 1; optimizer.zero_grad(); auto current_cell_features = diff --git a/hyperparameter_search.py b/hyperparameter_search.py index e0f61c0..b77a0f4 100644 --- a/hyperparameter_search.py +++ b/hyperparameter_search.py @@ -91,6 +91,7 @@ def objective(trial): early_stop_min_delta=args.early_stop_min_delta, early_stop_overlap_threshold=args.early_stop_overlap_threshold, early_stop_zero_overlap_patience=args.early_stop_zero_overlap_patience, + device=device, ) metrics = calculate_normalized_metrics( diff --git a/placement.py b/placement.py index 34b1af6..25c9fc6 100644 --- a/placement.py +++ b/placement.py @@ -73,6 +73,19 @@ def get_best_device(): return torch.device("cpu") +def resolve_device(device_name=None): + """Resolve a requested torch device and validate backend availability.""" + if device_name is None or str(device_name).lower() == "auto": + return get_best_device() + + device = torch.device(device_name) + if device.type == "cuda" and not torch.cuda.is_available(): + raise RuntimeError("CUDA device requested but CUDA is not available.") + if device.type == "mps" and not torch.backends.mps.is_available(): + raise RuntimeError("MPS device requested but MPS is not available.") + return device + + def seed_torch(seed): """Seed torch RNGs across supported backends.""" torch.manual_seed(seed) @@ -349,7 +362,12 @@ def wirelength_attraction_loss(cell_features, pin_features, edge_list): Scalar loss value """ if edge_list.shape[0] == 0: - return torch.tensor(0.0, requires_grad=True, device=cell_features.device) + return torch.tensor( + 0.0, + requires_grad=True, + device=cell_features.device, + dtype=cell_features.dtype, + ) # Update absolute pin positions based on cell positions cell_positions = cell_features[:, 2:4] # [N, 2] @@ -555,6 +573,7 @@ def train_placement( early_stop_min_delta=1e-4, early_stop_overlap_threshold=1e-4, early_stop_zero_overlap_patience=25, + device=None, ): """Train the placement optimization using gradient descent. @@ -580,6 +599,8 @@ def train_placement( early_stop_min_delta: Minimum improvement to reset patience early_stop_overlap_threshold: Treat overlap below this as effectively zero early_stop_zero_overlap_patience: Extra patience after zero-overlap to keep improving wirelength + device: Optional torch device override. When omitted, CPU inputs are moved + to the best available device. Returns: Dictionary with: @@ -587,9 +608,12 @@ def train_placement( - initial_cell_features: Original cell positions (for comparison) - loss_history: Loss values over time """ - device = cell_features.device - if device.type == "cpu": - device = get_best_device() + if device is None: + device = cell_features.device + if device.type == "cpu": + device = get_best_device() + else: + device = resolve_device(device) # Clone features and create learnable positions cell_features = cell_features.clone().to(device) @@ -1075,10 +1099,11 @@ def plot_placement( def main(args): """Main function demonstrating the placement optimization challenge.""" torch_profiler_config = build_torch_profiler_config_from_args(args) + device = resolve_device(args.device) if args.optuna: run_optuna_search( args, - get_best_device=get_best_device, + get_best_device=lambda: device, seed_torch=seed_torch, generate_placement_input=generate_placement_input, initialize_cell_positions=initialize_cell_positions, @@ -1098,7 +1123,6 @@ def main(args): test_case = TEST_CASES_BY_ID[args.test_case_id] # Set random seed for reproducibility - device = get_best_device() seed = test_case["seed"] if test_case is not None else args.seed seed_torch(seed) @@ -1175,6 +1199,7 @@ def main(args): early_stop_min_delta=args.early_stop_min_delta, early_stop_overlap_threshold=args.early_stop_overlap_threshold, early_stop_zero_overlap_patience=args.early_stop_zero_overlap_patience, + device=device, ) if args.track_loss_history: loss_history_path = save_loss_history_sqlite( diff --git a/test.py b/test.py index 68eedb2..db038b6 100644 --- a/test.py +++ b/test.py @@ -34,9 +34,9 @@ OUTPUT_DIR, calculate_normalized_metrics, generate_placement_input, - get_best_device, initialize_cell_positions, plot_placement, + resolve_device, seed_torch, train_placement, ) @@ -67,7 +67,7 @@ def run_placement_test( # Set seed for reproducibility seed_torch(seed) - device = get_best_device() + device = resolve_device(training_config["device"]) # Generate netlist cell_features, pin_features, edge_list = generate_placement_input( @@ -111,6 +111,7 @@ def run_placement_test( early_stop_zero_overlap_patience=training_config[ "early_stop_zero_overlap_patience" ], + device=device, ) elapsed_time = time.time() - start_time loss_history_path = None @@ -214,6 +215,7 @@ def run_all_tests(args): "early_stop_zero_overlap_patience": args.early_stop_zero_overlap_patience, "profile_tag": args.profile_tag, "torch_profiler_config": build_torch_profiler_config_from_args(args), + "device": args.device, } max_workers = args.workers @@ -228,6 +230,7 @@ def run_all_tests(args): print(f" lambda_overlap: {training_config['lambda_overlap']}") print(f" scheduler: {training_config['scheduler_name']}") print(f" scheduler_kwargs: {training_config['scheduler_kwargs']}") + print(f" device: {training_config['device']}") print(f" track_loss_history: {training_config['track_loss_history']}") print(f" track_overlap_metrics: {training_config['track_overlap_metrics']}") print(f" early_stop_enabled: {training_config['early_stop_enabled']}") From 4d54a563cf0816f807fcc010160e32f029036a0f Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 27 Apr 2026 22:24:24 -0700 Subject: [PATCH 47/48] add loss tracking in c++ --- cpp/CMakeLists.txt | 14 +- cpp/benchmark.cpp | 3 + cpp/include/placement/sqlite_utils.hpp | 104 +++++ cpp/include/placement/types.h | 15 + cpp/placement.cpp | 109 ++++- cpp/sqlite_utils.cpp | 534 +++++++++++++++++++++++++ cpp/training.cpp | 43 ++ cpp/vcpkg.json | 3 +- 8 files changed, 822 insertions(+), 3 deletions(-) create mode 100644 cpp/include/placement/sqlite_utils.hpp create mode 100644 cpp/sqlite_utils.cpp diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index 3e314d5..78c6b35 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -110,6 +110,7 @@ list(PREPEND CMAKE_PREFIX_PATH "${TORCH_CMAKE_PREFIX_PATH}") find_package(Torch CONFIG REQUIRED) find_package(CLI11 CONFIG REQUIRED) +find_package(SQLite3 REQUIRED) find_path(MATPLOTLIB_CPP_INCLUDE_DIRS "matplotlibcpp.h" REQUIRED) add_library( @@ -118,6 +119,7 @@ add_library( generation.cpp losses.cpp metrics.cpp + sqlite_utils.cpp training.cpp visualization.cpp ) @@ -127,12 +129,22 @@ target_compile_definitions( placement_core PRIVATE PLACEMENT_PYTHON_SITE_PACKAGES="${PYTHON_SITE_PACKAGES}" + PLACEMENT_REPO_ROOT="${CMAKE_CURRENT_LIST_DIR}/.." +) +target_link_libraries( + placement_core + PUBLIC "${TORCH_LIBRARIES}" Python3::Python + PRIVATE SQLite::SQLite3 ) -target_link_libraries(placement_core PUBLIC "${TORCH_LIBRARIES}" Python3::Python) target_compile_features(placement_core PUBLIC cxx_std_20) enable_placement_coverage(placement_core) add_executable(placement placement.cpp) +target_compile_definitions( + placement + PRIVATE + PLACEMENT_REPO_ROOT="${CMAKE_CURRENT_LIST_DIR}/.." +) target_link_libraries(placement PRIVATE placement_core CLI11::CLI11) target_compile_features(placement PRIVATE cxx_std_20) enable_placement_coverage(placement) diff --git a/cpp/benchmark.cpp b/cpp/benchmark.cpp index af218cd..b28dc90 100644 --- a/cpp/benchmark.cpp +++ b/cpp/benchmark.cpp @@ -72,6 +72,7 @@ BenchmarkResult runBenchmarkCaseImpl( result.num_macros = test_case.num_macros; result.num_std_cells = test_case.num_std_cells; result.total_cells = metrics.total_cells; + result.total_pins = problem.pin_features.size(0); result.num_nets = metrics.num_nets; result.seed = test_case.seed; result.device = benchmark_config.device; @@ -82,8 +83,10 @@ BenchmarkResult runBenchmarkCaseImpl( result.passed = result.num_cells_with_overlaps == 0; result.stopped_early = training_result.stopped_early; result.stop_reason = training_result.stop_reason; + result.run_started_at = training_result.run_started_at; result.best_epoch = training_result.best_epoch; result.epochs_completed = training_result.epochs_completed; + result.loss_history = training_result.loss_history; return result; } diff --git a/cpp/include/placement/sqlite_utils.hpp b/cpp/include/placement/sqlite_utils.hpp new file mode 100644 index 0000000..a1baa6b --- /dev/null +++ b/cpp/include/placement/sqlite_utils.hpp @@ -0,0 +1,104 @@ +#pragma once + +#include +#include +#include +#include +#include +#include +#include + +struct sqlite3; +struct sqlite3_stmt; + +namespace placement { + +struct LossHistory; + +struct LossHistoryRunMetadata { + std::optional test_id; + std::string runner; + std::string run_label = "train_placement"; + std::string run_started_at; + int seed = 0; + int num_macros = 0; + int num_std_cells = 0; + int num_epochs = 0; + double lr = 0.0; + double lambda_wirelength = 0.0; + double lambda_overlap = 0.0; + int log_interval = 0; + bool verbose = false; + int64_t total_cells = 0; + int64_t total_pins = 0; + int64_t total_edges = 0; +}; + +std::string sqliteError(sqlite3* db); + +[[noreturn]] void throwSqliteError(sqlite3* db, std::string_view context); + +void checkSqliteResult( + sqlite3* db, + int result_code, + std::string_view context); + +void executeSql(sqlite3* db, std::string_view sql, std::string_view context); + +class SqliteConnection { +public: + explicit SqliteConnection(const std::filesystem::path& db_path); + + SqliteConnection(const SqliteConnection&) = delete; + SqliteConnection& operator=(const SqliteConnection&) = delete; + + ~SqliteConnection(); + + sqlite3* get() const; + +private: + sqlite3* db_ = nullptr; +}; + +class SqliteStatement { +public: + SqliteStatement(sqlite3* db, std::string_view sql); + + SqliteStatement(const SqliteStatement&) = delete; + SqliteStatement& operator=(const SqliteStatement&) = delete; + + ~SqliteStatement(); + + sqlite3_stmt* get() const; + bool stepRow(); + void stepDone(); + void reset(); + +private: + sqlite3* db_ = nullptr; + sqlite3_stmt* stmt_ = nullptr; +}; + +void bindNull(sqlite3_stmt* stmt, int index); +void bindText(sqlite3_stmt* stmt, int index, std::string_view value); +void bindInt64(sqlite3_stmt* stmt, int index, int64_t value); +void bindBool(sqlite3_stmt* stmt, int index, bool value); +void bindDouble(sqlite3_stmt* stmt, int index, double value); +void bindOptionalInt64( + sqlite3_stmt* stmt, + int index, + const std::optional& value); + +void ensureColumns( + sqlite3* db, + std::string_view table_name, + const std::vector>& columns); + +std::filesystem::path createLossTrackingDb(); + +std::filesystem::path saveLossHistorySqlite( + const LossHistory& history, + const std::filesystem::path& db_path, + const LossHistoryRunMetadata& metadata); + +} // namespace placement diff --git a/cpp/include/placement/types.h b/cpp/include/placement/types.h index 9c1e499..7deed89 100644 --- a/cpp/include/placement/types.h +++ b/cpp/include/placement/types.h @@ -56,13 +56,25 @@ struct TrainingConfig { int log_interval = 100; }; +struct LossHistory { + std::vector total_loss; + std::vector wirelength_loss; + std::vector overlap_loss; + std::vector learning_rate; + std::vector overlap_count; + std::vector total_overlap_area; + std::vector max_overlap_area; +}; + struct TrainingResult { torch::Tensor final_cell_features; torch::Tensor initial_cell_features; bool stopped_early = false; std::string stop_reason; + std::string run_started_at; int best_epoch = -1; int epochs_completed = 0; + LossHistory loss_history; }; struct OverlapMetrics { @@ -94,6 +106,7 @@ struct BenchmarkResult { int num_macros = 0; int num_std_cells = 0; int64_t total_cells = 0; + int64_t total_pins = 0; int64_t num_nets = 0; int seed = 0; c10::DeviceType device = torch::kCPU; @@ -104,8 +117,10 @@ struct BenchmarkResult { bool passed = false; bool stopped_early = false; std::string stop_reason; + std::string run_started_at; int best_epoch = -1; int epochs_completed = 0; + LossHistory loss_history; }; struct BenchmarkSummary { diff --git a/cpp/placement.cpp b/cpp/placement.cpp index af69c13..1c462c8 100644 --- a/cpp/placement.cpp +++ b/cpp/placement.cpp @@ -1,6 +1,7 @@ #include "placement/benchmark.h" #include "placement/generation.h" #include "placement/metrics.h" +#include "placement/sqlite_utils.hpp" #include "placement/training.h" #include "placement/types.h" #include "placement/visualization.h" @@ -26,6 +27,10 @@ namespace { +using placement::LossHistoryRunMetadata; +using placement::createLossTrackingDb; +using placement::saveLossHistorySqlite; + struct CliOptions { bool run_benchmark = false; std::string device = "auto"; @@ -638,6 +643,8 @@ void printTrainingConfig(const placement::TrainingConfig& config) { std::cout << " scheduler_eta_min: " << config.scheduler_eta_min << "\n"; std::cout << " scheduler_step_size: " << config.scheduler_step_size << "\n"; std::cout << " scheduler_gamma: " << config.scheduler_gamma << "\n"; + std::cout << " track_loss_history: " + << (config.track_loss_history ? "true" : "false") << "\n"; std::cout << " track_overlap_metrics: " << (config.track_overlap_metrics ? "true" : "false") << "\n"; std::cout << " early_stop_enabled: " @@ -680,6 +687,15 @@ int runBenchmark( printTrainingConfig(config); std::cout << "\n"; + std::optional loss_tracking_db_path; + if (config.track_loss_history) { + loss_tracking_db_path = createLossTrackingDb(); + std::cout << "Writing loss history to: " + << loss_tracking_db_path->string() << "\n\n"; + } else { + std::cout << "Loss history tracking disabled.\n\n"; + } + int case_index = 1; for (const placement::BenchmarkCase& test_case : placement::activeBenchmarkCases()) { @@ -701,6 +717,34 @@ int runBenchmark( printBenchmarkResult(result); } + if (loss_tracking_db_path.has_value()) { + for (const placement::BenchmarkResult& result : summary.results) { + saveLossHistorySqlite( + result.loss_history, + *loss_tracking_db_path, + LossHistoryRunMetadata{ + .test_id = result.test_id, + .runner = "placement.cpp --benchmark", + .run_label = "train_placement", + .run_started_at = result.run_started_at, + .seed = result.seed, + .num_macros = result.num_macros, + .num_std_cells = result.num_std_cells, + .num_epochs = config.num_epochs, + .lr = config.lr, + .lambda_wirelength = config.lambda_wirelength, + .lambda_overlap = config.lambda_overlap, + .log_interval = config.log_interval, + .verbose = config.verbose, + .total_cells = result.total_cells, + .total_pins = result.total_pins, + .total_edges = result.num_nets, + }); + } + std::cout << "Loss history saved to: " + << loss_tracking_db_path->string() << "\n\n"; + } + printRule(); std::cout << "FINAL RESULTS\n"; printRule(); @@ -776,11 +820,46 @@ int runSinglePlacement( printRule(); std::cout << "RUNNING OPTIMIZATION\n"; printRule(); + std::optional loss_tracking_db_path; + if (config.track_loss_history) { + loss_tracking_db_path = createLossTrackingDb(); + std::cout << "Writing loss history to: " + << loss_tracking_db_path->string() << "\n"; + } else { + std::cout << "Loss history tracking disabled.\n"; + } + placement::TrainingResult training_result = placement::trainPlacement( problem.cell_features, problem.pin_features, problem.edge_list, config); + if (loss_tracking_db_path.has_value()) { + const std::filesystem::path saved_path = saveLossHistorySqlite( + training_result.loss_history, + *loss_tracking_db_path, + LossHistoryRunMetadata{ + .test_id = selected_case.test_id == 0 + ? std::optional() + : std::optional(selected_case.test_id), + .runner = "placement.cpp", + .run_label = "train_placement", + .run_started_at = training_result.run_started_at, + .seed = selected_case.seed, + .num_macros = selected_case.num_macros, + .num_std_cells = selected_case.num_std_cells, + .num_epochs = config.num_epochs, + .lr = config.lr, + .lambda_wirelength = config.lambda_wirelength, + .lambda_overlap = config.lambda_overlap, + .log_interval = config.log_interval, + .verbose = config.verbose, + .total_cells = problem.cell_features.size(0), + .total_pins = problem.pin_features.size(0), + .total_edges = problem.edge_list.size(0), + }); + std::cout << "Loss history saved to: " << saved_path.string() << "\n"; + } std::cout << "\n"; printRule(); @@ -914,10 +993,38 @@ void configureCli( "--scheduler-gamma", config.scheduler_gamma, "Gamma decay for step and exponential schedulers."); + app.add_flag( + "--track-loss-history", + [&config](int64_t count) { + if (count > 0) { + config.track_loss_history = true; + } + }, + "Collect and persist per-epoch loss history to SQLite."); + app.add_flag( + "--no-track-loss-history", + [&config](int64_t count) { + if (count > 0) { + config.track_loss_history = false; + } + }, + "Disable per-epoch loss-history persistence."); app.add_flag( "--track-overlap-metrics", - config.track_overlap_metrics, + [&config](int64_t count) { + if (count > 0) { + config.track_overlap_metrics = true; + } + }, "Compute overlap metrics every epoch."); + app.add_flag( + "--no-track-overlap-metrics", + [&config](int64_t count) { + if (count > 0) { + config.track_overlap_metrics = false; + } + }, + "Disable per-epoch overlap-metric tracking."); app.add_flag( "--no-early-stop", [&config](int64_t count) { diff --git a/cpp/sqlite_utils.cpp b/cpp/sqlite_utils.cpp new file mode 100644 index 0000000..f498929 --- /dev/null +++ b/cpp/sqlite_utils.cpp @@ -0,0 +1,534 @@ +#include "placement/sqlite_utils.hpp" + +#include "placement/types.h" + +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +namespace placement { + +std::string sqliteError(sqlite3* db) { + const char* message = db == nullptr ? nullptr : sqlite3_errmsg(db); + return message == nullptr ? "unknown sqlite error" : std::string(message); +} + +[[noreturn]] void throwSqliteError(sqlite3* db, std::string_view context) { + throw std::runtime_error(std::string(context) + ": " + sqliteError(db)); +} + +void checkSqliteResult( + sqlite3* db, + int result_code, + std::string_view context) { + if (result_code != SQLITE_OK) { + throwSqliteError(db, context); + } +} + +void executeSql(sqlite3* db, std::string_view sql, std::string_view context) { + char* error_message = nullptr; + const std::string sql_text(sql); + const int result_code = + sqlite3_exec(db, sql_text.c_str(), nullptr, nullptr, &error_message); + if (result_code != SQLITE_OK) { + const std::string message = + error_message == nullptr ? sqliteError(db) : std::string(error_message); + sqlite3_free(error_message); + throw std::runtime_error(std::string(context) + ": " + message); + } +} + +SqliteConnection::SqliteConnection(const std::filesystem::path& db_path) { + sqlite3* opened_db = nullptr; + const int result_code = sqlite3_open(db_path.string().c_str(), &opened_db); + db_ = opened_db; + if (result_code != SQLITE_OK) { + const std::string message = sqliteError(db_); + if (db_ != nullptr) { + sqlite3_close(db_); + db_ = nullptr; + } + throw std::runtime_error( + "Unable to open SQLite database " + db_path.string() + ": " + + message); + } + executeSql(db_, "PRAGMA foreign_keys = ON", "Enable SQLite foreign keys"); + checkSqliteResult( + db_, + sqlite3_busy_timeout(db_, 30000), + "Set SQLite busy timeout"); + executeSql( + db_, + "PRAGMA journal_mode = WAL", + "Enable SQLite WAL journal mode"); +} + +SqliteConnection::~SqliteConnection() { + if (db_ != nullptr) { + sqlite3_close(db_); + } +} + +sqlite3* SqliteConnection::get() const { + return db_; +} + +SqliteStatement::SqliteStatement(sqlite3* db, std::string_view sql) : db_(db) { + const std::string sql_text(sql); + const int result_code = + sqlite3_prepare_v2(db_, sql_text.c_str(), -1, &stmt_, nullptr); + checkSqliteResult(db_, result_code, "Prepare SQLite statement"); +} + +SqliteStatement::~SqliteStatement() { + if (stmt_ != nullptr) { + sqlite3_finalize(stmt_); + } +} + +sqlite3_stmt* SqliteStatement::get() const { + return stmt_; +} + +bool SqliteStatement::stepRow() { + const int result_code = sqlite3_step(stmt_); + if (result_code == SQLITE_ROW) { + return true; + } + if (result_code == SQLITE_DONE) { + return false; + } + throwSqliteError(db_, "Step SQLite row statement"); +} + +void SqliteStatement::stepDone() { + const int result_code = sqlite3_step(stmt_); + if (result_code != SQLITE_DONE) { + throwSqliteError(db_, "Step SQLite write statement"); + } +} + +void SqliteStatement::reset() { + checkSqliteResult(db_, sqlite3_reset(stmt_), "Reset SQLite statement"); + checkSqliteResult( + db_, + sqlite3_clear_bindings(stmt_), + "Clear SQLite statement bindings"); +} + +void bindNull(sqlite3_stmt* stmt, int index) { + checkSqliteResult( + sqlite3_db_handle(stmt), + sqlite3_bind_null(stmt, index), + "Bind SQLite null"); +} + +void bindText(sqlite3_stmt* stmt, int index, std::string_view value) { + const std::string value_text(value); + checkSqliteResult( + sqlite3_db_handle(stmt), + sqlite3_bind_text( + stmt, + index, + value_text.c_str(), + -1, + SQLITE_TRANSIENT), + "Bind SQLite text"); +} + +void bindInt64(sqlite3_stmt* stmt, int index, int64_t value) { + checkSqliteResult( + sqlite3_db_handle(stmt), + sqlite3_bind_int64(stmt, index, static_cast(value)), + "Bind SQLite integer"); +} + +void bindBool(sqlite3_stmt* stmt, int index, bool value) { + bindInt64(stmt, index, value ? 1 : 0); +} + +void bindDouble(sqlite3_stmt* stmt, int index, double value) { + if (!std::isfinite(value)) { + bindNull(stmt, index); + return; + } + checkSqliteResult( + sqlite3_db_handle(stmt), + sqlite3_bind_double(stmt, index, value), + "Bind SQLite double"); +} + +void bindOptionalInt64( + sqlite3_stmt* stmt, + int index, + const std::optional& value) { + if (value.has_value()) { + bindInt64(stmt, index, *value); + } else { + bindNull(stmt, index); + } +} + +void ensureColumns( + sqlite3* db, + std::string_view table_name, + const std::vector>& columns) { + std::vector existing_columns; + SqliteStatement statement( + db, + "PRAGMA table_info(" + std::string(table_name) + ")"); + while (statement.stepRow()) { + const unsigned char* column_text = + sqlite3_column_text(statement.get(), 1); + if (column_text != nullptr) { + existing_columns.emplace_back( + reinterpret_cast(column_text)); + } + } + + for (const auto& [column_name, column_type] : columns) { + if (std::find( + existing_columns.begin(), + existing_columns.end(), + column_name) == existing_columns.end()) { + executeSql( + db, + "ALTER TABLE " + std::string(table_name) + " ADD COLUMN " + + column_name + " " + column_type, + "Add SQLite schema column"); + } + } +} + +namespace { + +std::tm localTime(std::time_t time) { + std::tm local_time{}; +#if defined(_WIN32) + localtime_s(&local_time, &time); +#else + localtime_r(&time, &local_time); +#endif + return local_time; +} + +std::string compactTimestamp(std::chrono::system_clock::time_point timestamp) { + const std::time_t now_time = + std::chrono::system_clock::to_time_t(timestamp); + const std::tm local_time = localTime(now_time); + const auto micros = std::chrono::duration_cast( + timestamp.time_since_epoch()) % + std::chrono::seconds(1); + + std::ostringstream output; + output << std::put_time(&local_time, "%Y%m%d_%H%M%S_") + << std::setw(6) << std::setfill('0') << micros.count(); + return output.str(); +} + +std::string isoTimestampSeconds( + std::chrono::system_clock::time_point timestamp) { + const std::time_t now_time = + std::chrono::system_clock::to_time_t(timestamp); + const std::tm local_time = localTime(now_time); + + std::ostringstream output; + output << std::put_time(&local_time, "%Y-%m-%dT%H:%M:%S"); + return output.str(); +} + +std::filesystem::path repoRootPath() { +#if defined(PLACEMENT_REPO_ROOT) + return std::filesystem::path(PLACEMENT_REPO_ROOT).lexically_normal(); +#else + return std::filesystem::path(__FILE__).parent_path().parent_path(); +#endif +} + +std::filesystem::path lossTrackingDbDir() { + return repoRootPath() / "loss_tracking"; +} + +std::mutex& lossTrackingMutex() { + static std::mutex mutex; + return mutex; +} + +void bindLossDouble( + sqlite3_stmt* stmt, + int index, + const std::vector& values, + std::size_t epoch) { + if (epoch < values.size()) { + bindDouble(stmt, index, values[epoch]); + } else { + bindNull(stmt, index); + } +} + +void bindLossInt( + sqlite3_stmt* stmt, + int index, + const std::vector& values, + std::size_t epoch) { + if (epoch < values.size()) { + bindInt64(stmt, index, values[epoch]); + } else { + bindNull(stmt, index); + } +} + +void initializeLossTrackingSchema(sqlite3* db) { + executeSql( + db, + R"sql( + CREATE TABLE IF NOT EXISTS test_cases ( + test_id INTEGER PRIMARY KEY, + num_macros INTEGER, + num_std_cells INTEGER, + seed INTEGER, + updated_at TEXT NOT NULL + ); + + CREATE TABLE IF NOT EXISTS runs ( + run_id TEXT PRIMARY KEY, + test_id INTEGER REFERENCES test_cases(test_id) ON DELETE SET NULL, + runner TEXT, + run_label TEXT, + run_started_at TEXT, + saved_at TEXT NOT NULL, + seed INTEGER, + num_macros INTEGER, + num_std_cells INTEGER, + num_epochs INTEGER, + lr REAL, + lambda_wirelength REAL, + lambda_overlap REAL, + log_interval INTEGER, + verbose INTEGER, + total_cells INTEGER, + total_pins INTEGER, + total_edges INTEGER + ); + + CREATE TABLE IF NOT EXISTS loss_history ( + run_id TEXT NOT NULL REFERENCES runs(run_id) ON DELETE CASCADE, + epoch INTEGER NOT NULL, + total_loss REAL, + wirelength_loss REAL, + overlap_loss REAL, + learning_rate REAL, + overlap_count INTEGER, + total_overlap_area REAL, + max_overlap_area REAL, + PRIMARY KEY (run_id, epoch) + ); + )sql", + "Initialize loss-tracking schema"); + + ensureColumns( + db, + "runs", + { + {"seed", "INTEGER"}, + {"num_macros", "INTEGER"}, + {"num_std_cells", "INTEGER"}, + }); + ensureColumns( + db, + "loss_history", + { + {"learning_rate", "REAL"}, + {"overlap_count", "INTEGER"}, + {"total_overlap_area", "REAL"}, + {"max_overlap_area", "REAL"}, + }); +} + +std::size_t lossHistoryRowCount(const LossHistory& history) { + return std::max( + {history.total_loss.size(), + history.wirelength_loss.size(), + history.overlap_loss.size(), + history.learning_rate.size(), + history.overlap_count.size(), + history.total_overlap_area.size(), + history.max_overlap_area.size()}); +} + +} // namespace + +std::filesystem::path createLossTrackingDb() { + const std::filesystem::path db_dir = lossTrackingDbDir(); + std::filesystem::create_directories(db_dir); + const auto now = std::chrono::system_clock::now(); + const std::filesystem::path db_path = + db_dir / ("loss_tracking_" + compactTimestamp(now) + ".sqlite3"); + + SqliteConnection connection(db_path); + initializeLossTrackingSchema(connection.get()); + return db_path; +} + +std::filesystem::path saveLossHistorySqlite( + const LossHistory& history, + const std::filesystem::path& db_path, + const LossHistoryRunMetadata& metadata) { + std::lock_guard lock(lossTrackingMutex()); + std::filesystem::create_directories(db_path.parent_path()); + + const auto now = std::chrono::system_clock::now(); + const std::string saved_at = isoTimestampSeconds(now); + const std::string run_id = compactTimestamp(now); + const std::string run_started_at = + metadata.run_started_at.empty() ? saved_at : metadata.run_started_at; + + SqliteConnection connection(db_path); + sqlite3* db = connection.get(); + initializeLossTrackingSchema(db); + + executeSql(db, "BEGIN IMMEDIATE", "Begin loss-history transaction"); + try { + if (metadata.test_id.has_value()) { + SqliteStatement test_case_statement( + db, + R"sql( + INSERT INTO test_cases ( + test_id, + num_macros, + num_std_cells, + seed, + updated_at + ) + VALUES (?, ?, ?, ?, ?) + ON CONFLICT(test_id) DO UPDATE SET + num_macros = excluded.num_macros, + num_std_cells = excluded.num_std_cells, + seed = excluded.seed, + updated_at = excluded.updated_at + )sql"); + bindInt64(test_case_statement.get(), 1, *metadata.test_id); + bindInt64(test_case_statement.get(), 2, metadata.num_macros); + bindInt64(test_case_statement.get(), 3, metadata.num_std_cells); + bindInt64(test_case_statement.get(), 4, metadata.seed); + bindText(test_case_statement.get(), 5, saved_at); + test_case_statement.stepDone(); + } + + SqliteStatement run_statement( + db, + R"sql( + INSERT OR REPLACE INTO runs ( + run_id, + test_id, + runner, + run_label, + run_started_at, + saved_at, + seed, + num_macros, + num_std_cells, + num_epochs, + lr, + lambda_wirelength, + lambda_overlap, + log_interval, + verbose, + total_cells, + total_pins, + total_edges + ) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) + )sql"); + bindText(run_statement.get(), 1, run_id); + bindOptionalInt64( + run_statement.get(), + 2, + metadata.test_id.has_value() + ? std::optional(*metadata.test_id) + : std::nullopt); + bindText(run_statement.get(), 3, metadata.runner); + bindText(run_statement.get(), 4, metadata.run_label); + bindText(run_statement.get(), 5, run_started_at); + bindText(run_statement.get(), 6, saved_at); + bindInt64(run_statement.get(), 7, metadata.seed); + bindInt64(run_statement.get(), 8, metadata.num_macros); + bindInt64(run_statement.get(), 9, metadata.num_std_cells); + bindInt64(run_statement.get(), 10, metadata.num_epochs); + bindDouble(run_statement.get(), 11, metadata.lr); + bindDouble(run_statement.get(), 12, metadata.lambda_wirelength); + bindDouble(run_statement.get(), 13, metadata.lambda_overlap); + bindInt64(run_statement.get(), 14, metadata.log_interval); + bindBool(run_statement.get(), 15, metadata.verbose); + bindInt64(run_statement.get(), 16, metadata.total_cells); + bindInt64(run_statement.get(), 17, metadata.total_pins); + bindInt64(run_statement.get(), 18, metadata.total_edges); + run_statement.stepDone(); + + SqliteStatement delete_statement( + db, + "DELETE FROM loss_history WHERE run_id = ?"); + bindText(delete_statement.get(), 1, run_id); + delete_statement.stepDone(); + + SqliteStatement history_statement( + db, + R"sql( + INSERT INTO loss_history ( + run_id, + epoch, + total_loss, + wirelength_loss, + overlap_loss, + learning_rate, + overlap_count, + total_overlap_area, + max_overlap_area + ) + VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?) + )sql"); + const std::size_t row_count = lossHistoryRowCount(history); + for (std::size_t epoch = 0; epoch < row_count; ++epoch) { + history_statement.reset(); + bindText(history_statement.get(), 1, run_id); + bindInt64(history_statement.get(), 2, static_cast(epoch)); + bindLossDouble(history_statement.get(), 3, history.total_loss, epoch); + bindLossDouble( + history_statement.get(), + 4, + history.wirelength_loss, + epoch); + bindLossDouble(history_statement.get(), 5, history.overlap_loss, epoch); + bindLossDouble(history_statement.get(), 6, history.learning_rate, epoch); + bindLossInt(history_statement.get(), 7, history.overlap_count, epoch); + bindLossDouble( + history_statement.get(), + 8, + history.total_overlap_area, + epoch); + bindLossDouble( + history_statement.get(), + 9, + history.max_overlap_area, + epoch); + history_statement.stepDone(); + } + + executeSql(db, "COMMIT", "Commit loss-history transaction"); + } catch (...) { + executeSql(db, "ROLLBACK", "Rollback loss-history transaction"); + throw; + } + + return db_path; +} + +} // namespace placement diff --git a/cpp/training.cpp b/cpp/training.cpp index ded9769..8b8f0b0 100644 --- a/cpp/training.cpp +++ b/cpp/training.cpp @@ -4,10 +4,14 @@ #include "placement/metrics.h" #include +#include #include #include +#include +#include #include #include +#include #include namespace { @@ -52,6 +56,27 @@ void clipGradientNorm(const torch::Tensor& tensor, double max_norm) { } } +std::tm localTime(std::time_t time) { + std::tm local_time{}; +#if defined(_WIN32) + localtime_s(&local_time, &time); +#else + localtime_r(&time, &local_time); +#endif + return local_time; +} + +std::string isoTimestampSeconds( + std::chrono::system_clock::time_point timestamp) { + const std::time_t now_time = + std::chrono::system_clock::to_time_t(timestamp); + const std::tm local_time = localTime(now_time); + + std::ostringstream output; + output << std::put_time(&local_time, "%Y-%m-%dT%H:%M:%S"); + return output.str(); +} + class LearningRateScheduler { public: LearningRateScheduler(const placement::TrainingConfig& config, double base_lr) @@ -135,6 +160,8 @@ TrainingResult trainPlacement( const torch::Tensor& edge_list, const TrainingConfig& config) { TrainingResult result; + result.run_started_at = + isoTimestampSeconds(std::chrono::system_clock::now()); auto working_cell_features = cell_features.clone(); auto working_pin_features = pin_features.to(working_cell_features.device()); auto working_edge_list = edge_list.to(working_cell_features.device()); @@ -266,6 +293,22 @@ TrainingResult trainPlacement( } } + if (config.track_loss_history) { + result.loss_history.total_loss.push_back(total_loss.item()); + result.loss_history.wirelength_loss.push_back(wl_loss.item()); + result.loss_history.overlap_loss.push_back(overlap_loss.item()); + result.loss_history.learning_rate.push_back( + optimizerLearningRate(optimizer)); + if (config.track_overlap_metrics) { + result.loss_history.overlap_count.push_back( + overlap_metrics.overlap_count); + result.loss_history.total_overlap_area.push_back( + overlap_metrics.total_overlap_area); + result.loss_history.max_overlap_area.push_back( + overlap_metrics.max_overlap_area); + } + } + if (should_log_epoch) { std::cout << "Epoch " << epoch << "/" << config.num_epochs << ":\n"; std::cout << " Total Loss: " << total_loss.item() << "\n"; diff --git a/cpp/vcpkg.json b/cpp/vcpkg.json index 34a01e1..95ad7d6 100644 --- a/cpp/vcpkg.json +++ b/cpp/vcpkg.json @@ -4,6 +4,7 @@ "version-string": "0.1.0", "dependencies": [ "cli11", - "matplotlib-cpp" + "matplotlib-cpp", + "sqlite3" ] } From b74ec8c507e7f40fef3f899dd8897968ff19c1a7 Mon Sep 17 00:00:00 2001 From: greenTableWork Date: Mon, 20 Apr 2026 10:29:23 -0700 Subject: [PATCH 48/48] Apr 27 submission a --- README.md | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index cf27bfb..6501a5b 100644 --- a/README.md +++ b/README.md @@ -41,20 +41,21 @@ We will review submissions on a rolling basis. 8 | Shashank Shriram | 0.0000 | 0.3312 | 11.32 | 🏎️💥 | | 9 | Gabriel Del Monte | 0.0000 | 0.3427 | 606.07 | | | 10 | Aleksey Valouev| 0.0000 | 0.3577 | 118.98 | | -| 11 | Mohul Shukla | 0.0000 | 0.5048 | 54.60s | | -| 12 | Ryan Hulke | 0.0000 | 0.5226 | 166.24 | | -| 13 | Neel Shah | 0.0000 | 0.5445 | 45.40 | Zero overlaps on all tests, adaptive schedule + early stop | -| 14 | Nawel Asgar | 0.0000 | 0.5675 | 81.49 | Adaptive penalty scaling with cubic gradients and design-size optimization -| 15 | Shiva Baghel | 0.0000 | 0.5885 | 491.00 | Stable zero-overlap with balanced optimization | -| 16 | Vansh Jain | 0.0000 | 0.9352 | 86.36 | | -| 17 | Akash Pai | 0.0006 | 0.4933 | 326.25s | | -| 18 | Zade Mahayni | 0.00665 | 0.5157 | 127.4 | Will try again tomorrow | -| 19 | Nithin Yanna | 0.0148 | 0.5034 | 247.30s | aggressive overlap penalty with quadratic scaling | -| 20 | Sean Ko | 0.0271 | .5138 | 31.83s | lr increase, decrease epoch, increase lambda overlap and decreased lambda wire_length + log penalty loss | -| 21 | Keya Gohil | 0.0155 | 0.4678 | 1513.07 | Still working | -| 22 | Prithvi Seran | 0.0499 | 0.4890 | 398.58 | | -| 23 | partcl example | 0.8 | 0.4 | 5 | example | -| 24 | Add Yours! | | | | | +| 11 | Green Table | 0.0000 | 0.476 | 57.35 | | +| 12 | Mohul Shukla | 0.0000 | 0.5048 | 54.60s | | +| 13 | Ryan Hulke | 0.0000 | 0.5226 | 166.24 | | +| 14 | Neel Shah | 0.0000 | 0.5445 | 45.40 | Zero overlaps on all tests, adaptive schedule + early stop | +| 15 | Nawel Asgar | 0.0000 | 0.5675 | 81.49 | Adaptive penalty scaling with cubic gradients and design-size optimization +| 16 | Shiva Baghel | 0.0000 | 0.5885 | 491.00 | Stable zero-overlap with balanced optimization | +| 17 | Vansh Jain | 0.0000 | 0.9352 | 86.36 | | +| 18 | Akash Pai | 0.0006 | 0.4933 | 326.25s | | +| 19 | Zade Mahayni | 0.00665 | 0.5157 | 127.4 | Will try again tomorrow | +| 20 | Nithin Yanna | 0.0148 | 0.5034 | 247.30s | aggressive overlap penalty with quadratic scaling | +| 21 | Sean Ko | 0.0271 | .5138 | 31.83s | lr increase, decrease epoch, increase lambda overlap and decreased lambda wire_length + log penalty loss | +| 22 | Keya Gohil | 0.0155 | 0.4678 | 1513.07 | Still working | +| 23 | Prithvi Seran | 0.0499 | 0.4890 | 398.58 | | +| 24 | partcl example | 0.8 | 0.4 | 5 | example | +| 25 | Add Yours! | | | | | > **To add your results:** > Insert a new row in the table above with your name, overlap, wirelength, and any notes. Ensure you sort by overlap.